سلام به شما کاربران عزیز و دوست داشتنی. امروز میخوام درباره مفهوم API براتون مطلب بزارم و بگم که چی هست و به چه دردی میخوره اصلا.
در برنامه نویسی کامپیوتر یک رابط برنامه نویسی برنامه (API) مجموعه ای از تعاریف و پروتکل ها و ابزار های نرم افزاری برای ساخت نرم افزار است. به طور کلی API مجموعه ای از روش های تعریف شده میان ارتباطات بین اجزای مختلف است. یک API خوب، برنامه های کامپیوتری را با ارائه تمامی بلوک های ساختمانی که برنامه نویس آن ها را با هم ترکیب می کند، ساده تر می کند.
برای ساخت API میتوان از فریم ورک ها و میکرو فریم ورک های مختلف استفاده کرد، به طور مثال از میکرو فریم ورک Lumen برای برپایی میکرو سرویس ها و ساخت API های مختلف استفاده می شود. همچنین از میکرو فریم ورک Slim برای ایجاد API های که مصرف، باز پرداخت و انتشار داده ها رو بر عهده دارن، استفاده می شود.
ای پی آی ها در موارد مختلفی مورد استفاده قرار میگیرن که در ادامه به بیان چند مورد از موارد استفاده اون ها میپردازیم.
یک ای پی آی معمولا به یک کتابخانه نرم افزار مربوط است. ای پی آی رفتار مورد انتظار (یک مشخصه) رو توصیف و تجویز میکند در حالی که کتابخانه اجرای واقعی این مجموعه قوانین را بر عهده دارد. استفاده از ای پی آی بسته به زبان برنامه نویسی مورد استفاده است، مثلا یک ای پی آی برای زبان رویه ای مانند Lua (روش کلیک کن و بیشتر دربارش بدون) شامل دستورات اساسی برای اجرای کد، دستکاری داده ها یا رسیدگی به خطا است در حالی که یک ای پی آی برای یک زبان شی گرا مثل Java، یک ویژگی از کلاس ها و روش های کلاس خود را ارائه می دهد.
Web APIs یا همان Web Service ها رابط های تعریف شده ای هستند که از طریق ان ها تعاملات بین یک شرکت و برنامه هایی که از دارایی های آن شرکت استفاده می کنند، اتفاق می افتد. یک ای پی آی هنگامی که در زمینه توسعه وب مورد استفاده قرار میگیرد معمولا مجموعه ای از مشخصات مانند پیام درخواست پروتکل انتقال پیام (HTTP) را همراه با تعریف ساختار پیام های پاسخ که معمولا در قالب نشانه گذاری XML یا نشانه گذاری شی جاوا اسکریپت (JSON) است، تعریف می کند.
ای پی آی می تواند رابط کاربری بین برنامه و سیستم عامل را مشخص کند. مایکروسافت تعهد قوی نسبت به یک ای پی آی متقابل عقب مانده را به ویژه در کتابخانه Windows API خود نشان داده است، بنابراین برنامه های قدیمی تر ممکن است در نسخه های جدیدتر ویندوز اجرا شوند. یک ای پی آی از یک رابط دوتایی نرم افزار (ABI) متفاوت است، ای پی آی یک منبع کد است در حالی که ABI بر اساس باینری است.
Remote APIs به توسعه دهندگان اجازه می دهد تا منابع را از طریق پروتکل ها دستکاری کنند. Remote APIs در حفظ انتزاع شی در برنامه نویسی شی گرایی مفید است و در اصطلاح یک method call نامیده میشود.
طراحی یک ای پی آی تاثیر قابل توجهی در استفاده از آن دارد. اصل پنهان سازی اطلاعات نقش رابط های برنامه نویسی را به عنوان برنامه ریزی مدولاسیون با پنهان کردن جزئیات پیاده سازی ماژول ها به طوری که کاربران ماژول ها نیازی به درک پیچیدگی درون ماژول ها ندارند، فعال می کند. بنابراین طراحی یک ای پی آی تلاش میکند تا تنها ابزار هایی را که کاربر انتظار دارد را ارئه دهد.
برای مطالعه این مقاله در وب سایت ویادولوپزر اینجا کلیک کنید.