ORANGEPRO

ORANGEPRO

وبلاگی در مورد دنیای کامپیوتر
ORANGEPRO

ORANGEPRO

وبلاگی در مورد دنیای کامپیوتر

API چیه؟

                                                         API     مخفف عبارت Application Programming Interface هست، یعنی “رابط برنامه‌نویسی کاربردی”.

به زبان خیلی ساده، API مثل یه پیش‌خدمت یا مترجم بین دو تا نرم‌افزار یا سرویس مختلف عمل می‌کنه. فرض کن می‌خوای از یه رستوران غذا سفارش بدی. تو (یه برنامه) نمی‌تونی مستقیم بری توی آشپزخونه (برنامه دیگه) و به آشپز بگی چی درست کنه. در عوض، میری سراغ پیش‌خدمت (API) که منوی غذاها رو داره، سفارش تو رو می‌گیره و به آشپز می‌رسونه، و بعد غذای آماده شده رو برات میاره.

API هم دقیقا همین کار رو برای نرم‌افزارها انجام می‌ده:

    تعریف قوانین و پروتکل‌ها: API مشخص می‌کنه که چطور برنامه‌ها می‌تونن با هم صحبت کنن، چه اطلاعاتی رو می‌تونن از هم بپرسن و چه نوع پاسخ‌هایی رو دریافت کنن. مثل اینکه بدونه چطور درخواست بده (مثلاً “اطلاعات آب و هوای توکیو رو بهم بده”) و چه فرمتی از پاسخ رو انتظار داره (مثلاً “دما، رطوبت و سرعت باد”).
    انتزاع پیچیدگی: برنامه‌نویس‌ها لازم نیست تمام جزئیات پیچیده کارکرد یک سرویس دیگه رو بدونن. مثلاً وقتی داری از نقشه گوگل توی اپلیکیشن خودت استفاده می‌کنی، نیازی نیست بدونی گوگل چطور داده‌های ماهواره‌ای رو پردازش می‌کنه؛ فقط از طریق API گوگل مپ این قابلیت رو به اپ خودت اضافه می‌کنی.
    قابلیت همکاری (Interoperability): باعث می‌شه نرم‌افزارهای مختلف که توسط تیم‌های مختلف و با تکنولوژی‌های متفاوت ساخته شدن، بتونن با هم کار کنن و اطلاعات رو رد و بدل کنن.

چند مثال کاربردی API:

    وب‌سرویس‌های آب و هوا: وقتی یه اپلیکیشن هواشناسی رو باز می‌کنی، اون اپلیکیشن از API سرویس‌دهنده‌های هواشناسی (مثل OpenWeatherMap) برای گرفتن اطلاعات استفاده می‌کنه.
    شبکه‌های اجتماعی: وقتی می‌خوای با اکانت گوگل یا فیسبوکت وارد یه سایت دیگه بشی، اون سایت از API فیسبوک یا گوگل استفاده می‌کنه تا هویت تو رو تایید کنه.
    پرداخت آنلاین: درگاه‌های پرداخت اینترنتی از API برای ارتباط با بانک‌ها و پردازش تراکنش‌های مالی استفاده می‌کنن.
    نقشه‌ها: اپلیکیشن‌هایی که از نقشه استفاده می‌کنن (مثل اسنپ یا تپسی)، از API سرویس‌هایی مثل Google Maps یا نشان بهره می‌برن.

پس در کل، API یه واسط استاندارد و تعریف‌شده است که به نرم‌افزارها اجازه می‌ده بدون اینکه همدیگه رو کامل بشناسن، با هم ارتباط برقرار کنن و از قابلیت‌های همدیگه استفاده کنن.