خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را


API یا Application Programming Interface چیست

API یا Application Programming Interface چیست
شما به احتمال زیاد اصطلاح API را تا بحال بارها شنیده اید. سیستم عامل، مرورگر وب و آپدیت های برنامه ها اغلب API های جدید را معرفی می کنند. اما واقعا API چیست؟ وقتی جایی واژه API را دیده یا می شنویم، منظور چیست؟

نرم افزار سامانه مودیان راهکار

Application Programming Interface

واژه API مخفف عبارت Application Programming Interface است. شما API را می توانید منوی یک رستوران در نظر بگیرید. در این منو لیستی از غذا را می توانید همراه با توضیحی در مورد هر غذا، سفارش دهید. وقتی سفارش خود را از منو انتخاب می کنید، آشپز و کارکنان آشپزخانه اقدام به آماده سازی و تهیه غذا می کنند تا غذا روی میز به دست شما برسد و آماده سرو شود. غذا آماده می شود و شما آن غذا را میل می کنید ولی واقعا نیازی نیست که بدانیم واقعا آشپز برای تهیه غذای مورد نظر ما چه مراحلی را طی کرده است(البته اگر مسائل بهداشتی و سلامتی را در نظر نگیریم).


به طور مشابه، یک API لیستی از عملیات و کارهایی را که توسعه دهندگان نرم افزار می توانند از آن استفاده کنند، نشان می دهد. به عنوان مثال یک نرم افزار تحت وب یا ویندوز را در نظر بگیرید که با کلیک دکمه ای کادر Save As ظاهر می شود و شما می توانید عکس یا متن را در غالب مورد نظرتان Save کنید. ما واقعا نیازی نیست که بدانیم در پشت صحنه چه فرآیندی رخ می دهد تا این کادر ظاهر شود و ذخیره سازی انجام شود. برای ما فقط مهم است که این کادر در دسترس برای چنین کاری باشد.
شاید برخی توسعه دهندگان نرم افزار مجبور باشند که داده های خود را به API برای دریافت نتایج ارائه دهند. این شاید سبیه یک رستوران فانتزی باشد شما می توانید برخی از مواد مورد استفاده خود را که آشپزخانه با آن کار می کند را ارائه دهید.
API ها واقعا در صرفه جویی وقت برنامه نویسان و توسعه دهندگان نرم افزار موثر هستند و باعث می شود زمانی صرف بسیاری از کارها، نظیر همین کادر Save as نکنند و بیشتر زمان خود را متوجه سایر قسمت های برنامه کنند. خب، همین API علاوه بر اینکه صرفه جویی در زمان را به ارمغان می آورد، بحث کاهش کد نویسی و همینطور سازگاری را هم در پی دارد. API ها می توانند دسترسی به منابع سخت افزاری و نرم افزاری را کنترل کنند.

APIs Make Life Easier for Developers

مثلا شما قصد ایجاد یک برنامه برای iphone را دارد. خب، سیستم عامل iOS اپل تعداد زیادی از API ها را برای چنین کارهایی فراهم می کند، همانطور که هر سیستم عامل دیگری این کار را انجام می دهد تا این کار را برای شما ساده تر کند. برای مثال، اگر شما می خواهید یک مرورگر وب را برای نمایش یک یا چند صفحه وب ایجاد کنید، وقعا نیازی نیست یک مرورگر وب فقط برای برنامه خود برنامه نویسی کنید بلکه از WKWebView API برای مرورگر WebKit (Safari) در برنامه خود استفاده می کنید.
مثلا قصد دارید با استفاده از دوربین آیفون خود فیلم یا عکس تهیه کنید، در این حالت شما هیچ نیازی به برنامه نویسی برای ارتباط با دوربین ندارید، حتی اگر برنامه ای را هم ایجاد کنید باز هم نیازی نیست برای استفاده از دوربین برنامه نویسی کنید بلکه از API مربوط به دوربین در آیفون استفاده می کنید به جای اینکه کلی زمان صرف برنامه نویسی چنین چیزی کنید. تصور کنید همچین API هایی نبود واقعا چقدر کار برای برنامه نویسان سخت تر می شد و زمان برنامه نویسی بیشتر و بیشتر می شد. چنین کارهای سختی را توسعه دهندگان و برنامه نویسان APPLE و یا سایر شرکت ها ارائه می دهند تا کاربران راحت تر بتوانند برنامه نویسی کنند و برنامه های خود را سریعتر تکمیل کنند. camera API شرکت اپل که برای این شرکت است، هر گاه که بهبودی در camera API حاصل شود، تمام برنامه هایی که با تکیه بر آن کار می کنند از مزایای این بهبود به طور خودکار استفاده می کنند.
API فقط شرکت اپل نیست که برای پلت فرم خود ارائه می دهد، مایکروسافت هم برای پلت فرم ویندوزخود API های بسیاری را ارائه داده است. یک مثال آن را بالاتر زدیم، آیا در برنامه نیاز به کادر محاوره ای یا Dialog box هستید، با کمترین زحمت می توانید آن را داشته باشید چون برای آن API وجود دارد. آیا می خواهید در اندروید اعتبار سنجی با اثر انگشت داشته باشید؟ برای این هم API وجود دارد. خیلی ساده تر در مورد API بخواهیم حرف بزنیم این است که نیازی نیست چرخ را دوباره اختراع کنیم.

APIs Control Access to Resources

API ها همچنین برای کنترل دسترسی به دستگاه های سخت افزاری و عملکرد نرم افزار مورد استفاده قرار می گیرند که ممکن است اپلیکیشن ها مجاز به استفاده از آنها نباشند. به همین دلیل API ها اغلب در امنیت نقش مهمی ایفا می کنند. به عنوان مثال، اگر شما تا به حال از یک وب سایت بازدید کرده باشید که در مرورگرتان یک پیغام نمایش داده شود که وبسایت درخواست جستجوی مکان دقیق شما را دارد، برای این است این وب سایت تلاش می کند از API جغرافیایی در مرورگر وب شما استفاده کند. مرورگرهای وب API هایی مانند این را به نمایش می گذارند تا دسترسی به موقعیت جغرافیای شما برای توسعه دهندگان آن نرم افزار یا سایت آسان تر شود. در این شرایط مرورگر کار بسیار سختی را به دوش دارد تا با دسترسی به GPS و یا شبکه های Wi-Fi نزدیک، مکان فیزیکی شما را پیدا کند. با این حال، مرورگرها نیز این اطلاعات را از طریق یک API به نمایش می گذارند زیرا ممکن است دسترسی به آن را کنترل کند. هنگامی که یک وبسایت میخواهد دسترسی به مکان دقیق فیزیکی شما را داشته باشد، تنها راهی است که مقدور است، از طریق location API است. هنگامی که وب سایتی چنین درخواستی را از کاربر می کند کاربر می تواند این درخواست را تایید و یا رد کند. تنها راه دسترسی به منابع سخت افزاری، مانند سنسور GPS، از طریق API است، بنابراین مرورگر می تواند دسترسی به سخت افزار را کنترل و محدود کند.
این مورد در اصل در سیستم عامل های موبایل مانند IOS و Android که در آن برنامه های موبایل دارای مجوز هایی هستند که می توانند از API استفاده کنند. به عنوان مثال، اگر یک توسعه دهنده نرم افزار سعی داشته باشد که دسترسی به دوربین موبایل از طریق camera API داشته باشد، شما می توانید این درخواست را تایید و یا رد کنید و با اینکه API در اختیار برنامه قرار گرفته ولی در نهایت کاربر هم باید در جریان این دسترسی باشد.
فایل سیستم هایی که از permissions ها استفاده می کنند، همانطور که در ویندوز، مک و لینوکس استفاده می شود، این مجوز ها توسط API فایل سیستم اعمال و اجرا می شود. یک برنامه معمول دسترسی مستقیم به هارد دیسک فیزیکی ندارد و در عوض، برنامه باید از طریق یک API به فایل ها دسترسی پیدا کند.

APIs Are Used For Communication Between Services

API ها برای منظورهای دیگری نیز استفاده می شوند، به عنوان مثال، اگر Google Maps را در یک وبسایت دیده باشید، این وبسایت از API Google Maps برای جاسازی آن نقشه استفاده می کند. و کل این API ها را برای توسعه دهندگان و برنامه نویسان وب ارائه کرده است. که بعدا می توانند از API ها برای استفاده از اشیاء پیچیده در وب سایت خود استفاده کنند. اگر API هایی مانند این وجود نداشته باشند، توسعه دهندگان ممکن است مجبور باشند نقشه های خودشان را ایجاد کنند و این یعنی کلی کار و کلی زمان که باید صرف چنین کاری شود. پس ببینید که API ها چقدر مفید و کاربردی هستند.

API یا Application Programming Interface چیست . آموزشگاه رایگان خوش آموز




نمایش دیدگاه ها (0 دیدگاه)

دیدگاه خود را ثبت کنید:

انتخاب تصویر ویرایش حذف
توجه! حداکثر حجم مجاز برای تصویر 500 کیلوبایت می باشد.


دسته بندی مطالب خوش آموز