عیدی

API چیست و API های باز چگونه اینترنت را تغییر می‌دهند؟

۱۲ مرداد ۱۳۹۷


تعداد بازدید ها:
۵

آیا تاکنون به این فکر کرده‌اید که چگونه برنامه‌های روی رایانه شما و وب‌سایت‌هایی که از آن‌ها بازدید می‌کنید، با هم ارتباط برقرار می‌کنند؟ برای درک این نکته نخست باید به دنیای عجیب و شگفت‌انگیز API ها وارد شویم. API اختصاری برای عبارت «رابط‌های برنامه‌نویسی اپلیکیشن» (Application Programing Interfaces) محسوب می‌شود.

API چیست؟

عبارت API به طور معمول در زمینه‌های علم رایانه مشاهده می‌شود. اما معنی آن چیست؟ این واژه به یک ابزار یا کتابخانه‌ای اشاره می‌کند که به توسعه‌دهندگان کمک می‌کند تا کدی بنویسند که با نرم‌افزارهای دیگر ارتباط برقرار می‌کند. این کدها از ابزارهای سطح پایین که برنامه‌های ویندوز و OS X استفاده می‌کنند کمک می‌گیرند تا از جنبه‌های زیرساختی سیستم‌عامل استفاده کنند. برخی از API ها نیز ابزارهایی هستند که امکانات اپلیکیشن‌های روی گوشی را تأمین می‌کنند. به طور خلاصه API روشی برای برقراری ارتباط بین یک برنامه رایانه‌ای با برنامه‌های رایانه‌ای دیگر فراهم می‌سازد.

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

کاربردهای API در کسب‌وکار

ممکن است تصور کنید که دنیای فناوری ماهیتی خشن دارد که در آن هیچ صاحب کسب‌وکاری به رقبای خود کمک نمی‌کند. اما این تصور نادرست است. در واقع بسیاری از شرکت‌های فناوری مانند توییتر، لینکدین و فیس‌بوک حتی به شرکت‌ها و رقبای شخص ثالث امکان استفاده از خدمات خود را می‌دهند.

البته دلایل تجاری کاملاً هوشمندانه‌ای وجود دارد که چرا یک شرکت فناوری باید API خود را منتشر کرده و به رقبایش امکان استفاده از این خدمات را بدهد. در مورد توییتر و فیس‌بوک می‌بینیم که چگونه طرف‌های ثالث این خدمات را با کدهای خودشان غنی‌تر ساخته‌اند. نمونه مشخص از این مسئله در Klout قابل مشاهده است. این برنامه به توسعه‌دهندگان اجازه می‌دهد که تأثیر اجتماعی خود را اندازه‌گیری کنند، در زمینه‌های مورد علاقه خود افراد تأثیرگذار را بیابند و ارسال مطالب را در فیس‌بوک و توییتر زمان‌بندی نمایند.

همچنین داشتن API به کاربران امکان می‌دهد که برنامه‌های جایگزین برای پلتفرم‌های رایانه‌ای دسکتاپ و موبایل ایجاد کنند. مثلاً با استفاده از API، برنامه‌های فیس‌بوک جایگزین، برای سیستم‌عامل اندروید و همچنین پلتفرم‌های جدیدتر از سوی طرف‌های ثالث توسعه یافته است. به همین دلیل است که فیس‌بوک، توییتر، اینستاگرام و لینکدین روی پلتفرم‌های کوچک‌تر که ارزش تجاری کمتری دارند مانند ویندوز فون، بلک‌بری ۱۰، سیستم‌عامل فایرفاکس و تایزن حضور دارند.

همچنین داشتن API به کاربران و شرکت‌ها کمک می‌کند که یک محصول موجود را تغییر دهند تا مطابق سلیقه آن‌ها عمل کند. برای مثال API انتشار یافته از سوی استارتاپ نروژی Appear.in به کاربران امکان می‌دهد که نسخه HTML5 مخصوص خود از این برنامه ویدئوکنفرانس را درون بلاگ ها، وب‌سایت‌ها یا برنامه‌هایشان اجرا کنند.

کاربردهای API در مرورگر

مشخصات HTML5 آنچه را که تجربه مدرن مرور وب را تشکیل می‌دهد چنین توصیف کرده است: سریع، تعاملی و با کمترین افزونه‌ها تا حد ممکن. با این که پشتیبانی از این استاندارد در اکثر حوزه‌ها هنوز کامل نشده است و هنوز روی مرورگرهای زیادی ناسازگار است؛ اما همچنان کارکردهای زیادی را عرضه کرده است.

ما قبلاً در بلاگ عیدی HTML5 را بررسی کرده‌ایم و حتی آموزش‌هایی در این خصوص عرضه شده است، اما در اینجا هم برخی خصوصیات آن را بر می‌شماریم. آخرین کارکردی که در HTML5 به ساخت بازی‌های پر جزییات و انیمیشن‌ها کمک می‌کند Canvas است. بدین ترتیب وب‌سایت‌ها می‌توانند داده‌ها را روی رایانه کاربر بدون نیاز به کوکی ذخیره کنند و همچنین موقعیت جغرافیایی و حتی میزان باتری رایانه کاربر را بدانند.

برای این که ایده‌ای از میزان قدرت HTML5 داشته باشید می‌توانید یک بازی مبتنی بر HTML5 به نام HexGL را امتحان کنید. اما آنچه احتمالاً نمی‌دانید این است که این اجزای منفرد HTML5 را در واقع باید API در نظر گرفت. اما چطور؟ در ابتدا باید گفت که همانند همه API ها، استاندارد منتشر شده و به دقت طراحی‌شده‌ای در مورد شیوه کارکرد مرورگر و چگونگی استفاده توسعه‌دهندگان از آن وجود دارد.

توسعه‌دهندگان در روندی کاملاً مشابه API وب‌سایت Appear.in و یا API های فیس‌بوک یا اینستاگرام می‌توانند از این امکان و کارکرد در جهت ایجاد تبادل داده همانند API IndexedDB یا جهت دسترسی به کارکردهای مرورگر مانند API Canvas بهره بگیرند.

کاربردهای API در دولت

در سال‌های اخیر شاهد گشایش بی‌سابقه‌ای در زمینه ارائه اطلاعات از سوی دولت‌ها هستیم و میل به شفافیت افزایش یافته است. در بریتانیا وب‌سایتی آغاز به کار کرده است که همه مجموعه داده‌ها و آمار را یکجا عرضه می‌کند و برای متخصصین آمار، روزنامه‌نگاران و دانشمندان علم داده بسیار مناسب است. در ایالات‌متحده نیز حرکت بی‌وقفه‌ای به سمت عرضه عمومی منابع اطلاعاتی وجود دارد؛ اما در این کشور مسئله کمی متفاوت است. در ایالات‌متحده علاوه بر ارائه اطلاعات به صورت فایل‌های صفحه گسترده اکسل و CSV داده‌ها به صورت API نیز در دسترس هستند.

زمینه این حرکت در فرمان اجرایی شماره ۱۳۵۷۱ صادر شده در تاریخ ۲۷ آوریل ۲۰۱۱ است. این فرمان اجرایی سازمان‌های دولتی را ملزم می‌کند که بررسی کنند به چه ترتیبی می‌توانند ارائه خدمات را بهبود بخشند و روی ارائه این خدمات از طریق فناوری دیجیتال تأکید دارد.

این پروژه احتمالاً یکی از اولین موارد در نوع خود بوده است و موفقیتی بی‌نظیر داشته است. اغلب سازمان‌های دولتی ایالات‌متحده مجموعه داده‌ها را در معرض عموم قرار داده‌اند که شامل موسسه ملی سلامت، ارتش ایالات‌متحده و وزارت امنیت داخلی این کشور است.

نتیجه گیری

برای این که از مزیت اکثر این API ها بهره‌مند شوید، احتمالاً می‌بایست زمینه برنامه‌نویسی قوی داشته باشید و همچنین به میزانی از تبحر در خصوص بصری‌سازی داده‌ها، علم داده و آمار نیز احتیاج خواهید داشت. اما به عنوان یک کاربر نهایی می‌توانید از برنامه‌ها و وب‌سایت‌هایی که از این مجموعه داده‌ها استفاده می‌کنند، بهره بگیرید. یکی از مهم‌ترین این نرم‌افزارها AirNow است که امکان نظارت بر کیفیت هوا را در محل زندگی‌تان فراهم می‌سازد.

ایالات‌متحده در زمینه استفاده از API برای عرضه عمومی اطلاعات دولتی و افزایش شفافیت منحصربه‌فرد نیست. دولت‌های دیگری که از آن زمان API های باز عرضه کرده‌اند شامل استرالیا، نیوزیلند، و بریتانیا هستند. API ها در ظاهر کسل‌کننده به نظر می‌رسند، اما در عمل اصلاً چنین نیستند. API ها روش عملکرد دولت‌ها را تغییر داده‌اند و سطح غیر قابل تصوری از حق انتخاب را در زمان استفاده از اینترنت فراهم می‌سازند.

اگر به این نوشته علاقه‌مند بودید، شاید موارد زیر نیز مورد توجه شما قرار گیرند:

==

آیا این مطلب برای شما مفید بود؟