(API (Application Programming Interface، یک رابط برنامه نویسی است به عبارت دیگر مجموعه ای از روال ها، پروتکل ها و ابزارها برای ایجاد برنامه های کاربردی نرم افزاری است. API مانند منو در یک رستوران است، همانطور که منو اطلاعاتی از غذا ها به ما می دهد؛ یک API نیز لیستی از عملیات هایی که توسعه دهندگان می توانند استفاده کنند، تهیه کرده و به همراه توضیحات مربوطه در اختیار ما قرار می دهد. توسعه دهندگان لزوما نباید بدانند که یک سیستم عامل چگونه یک عملیات (( عملیات ذخیره سازی به عنوان مثال)) را انجام می دهد، صرفا باید اطلاع داشته باشند که برنامه ای که در اختیار دارند از چه قابلیت هایی پشتیبانی می کند.
API مشخص می کند که چگونه اجزای نرم افزار باید با یکدیگر تعامل داشته باشند. علاوه بر این، رابط های برنامه نویسی در هنگام برنامه ریزی اجزای رابط کاربری گرافیکی (GUI) مورد استفاده قرار می گیرند.
انواع
انواع مختلفی از API ها برای سیستم عامل ها، برنامه ها و وب سایت ها وجود دارد. برای مثال، ویندوز دارای مجموعه های زیادی از API است که توسط سخت افزار و برنامه های کاربردی سیستم استفاده می شوند. هنگامی که در ویندوز متنی را از جای دیگر کپی کرده و در جای دیگری قرار می دهید، این رابط برنامه نویسی است که این عملیات را برای شما انجام می دهد. اکثر محیط های عملیاتی، مانند MS-Windows، رابط های برنامه نویسی را ارائه می دهند، به این ترتیب برنامه نویسان برنامه ها را متناسب با محیط عملیاتی می نویسند. از معروف ترین واسط های برنامه نویسی می توان به موارد زیر اشاره کرد:
- Google Map API:رابط های Google Maps به توسعه دهندگان امکان می دهد نقشه های گوگل را بر روی صفحات وب با استفاده از رابط کاربری جاوا اسکریپت یا فلش جاسازی کنند. این رابط برای کار بر روی دستگاه های تلفن همراه و مرورگرهای دسکتاپ طراحی شده است.
- Flickr API: رابط Flickr توسط توسعه دهندگان برای دسترسی به داده های اشتراک گذاری عکس Flick استفاده می شود.
- Twitter API: توییتر دو نوع رابط برنامه نویسی را ارائه می دهد. یک رابط برای دسترسی به داده های مرکزی و یک رابط برای جستجو در آن ها.
اهمیت
بدون رابط های برنامه نویسی، اکثر نرم افزارها نمی توانند وجود داشته باشند. علاوه بر دسترسی به داده ها، ما برای دسترسی های مکانیکی نیز به رابط ها نیازمندیم. رابط ها همچنین برای کنترل دسترسی به دستگاه های سخت افزاری و توابع نرم افزاری استفاده می شوند. به همین دلیل API ها اغلب در امنیت نقش مهمی ایفا می کنند.