• خانه
  • API چیست؟ کاربرد آن در دنیای برنانه نویسی

API چیست؟ کاربرد آن در دنیای برنانه نویسی

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

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

به‌طور مشابه، API عملیاتی که توسعه‌دهندگان از آن‌ها استفاده می‌کنند را به همراه شرح فعالیت آن‌ها لیست می‌کند. توسعه‌دهنده نیازی به دانستن چگونگی ساخت پنجره «Save As» توسط سیستم‌عامل ندارند، بلکه تنها دانستن وجود این امکان در برنامه برای آن‌ها کافی است.

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

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

 

API ها زندگی را برای توسعه‌دهندگان ساده‌تر می‌کنند.

تصور کنید می‌خواهید یک برنامه کاربردی را برای iPhone توسعه دهید. سیستم‌عامل iOS همانند دیگر سیستم‌عامل‌ها تعداد زیادی API تولید می‌کند، تا کار را برای شما ساده‌تر کند.

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

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

این مسئله برای همه پلتفرم‌ها قابل‌تعمیم است. به‌عنوان‌مثال، آیا شما می‌خواهید یک دیالوگ باکس در ویندوز ایجاد کنید؟ API ای برای آن وجود دارد. آیا می‌خواهید شناسایی با اثرانگشت را در اندروید پشتیبانی کنید؟ برای آن‌هم یک API وجود دارد؛ بنابراین شما نیازی به بررسی حس‌گر اثرانگشت شرکت‌های مختلف در اندروید ندارید. توسعه‌دهندگان نیاز به اختراع دوباره و دوباره چرخ ندارند.

 

 

API ها دسترسی به منابع را کنترل می‌کنند.

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

به‌عنوان‌مثال، اگر شما تاکنون از وب‌سایتی بازدید کرده‌اید و پیغامی را در مرورگر مشاهده کرده‌اید که از شما در مورد مکان دقیقتان سؤال پرسیده است، آن وب‌سایت سعی در استفاده از geolocation API در مرورگر وب شما دارد. مرورگرها چنین API هایی را ارائه می‌دهند تا دسترسی به موقعیت شما را برای توسعه‌دهندگان وب ساده‌تر کنند. آن‌ها تنها می‌پرسند «شما کجا هستید؟» و قسمت سخت کار را برای دسترسی به GPS یا شبکه‌های Wi-Fi نزدیک برای یافتن موقعیت فیزیکی شما، همگی بر عهده مرورگر است.

بدین ترتیب، مرورگرها این اطلاعات را از طریق یک API نیز ارائه می‌دهند زیرا کنترل دسترسی به آن امکان‌پذیر است. زمانی که یک وب‌سایت می‌خواهد به موقعیت دقیق فیزیکی شما دست یابد، تنها راه ممکن استفاده از API مکانی است؛ و زمانی که یک وب‌سایت درخواست دسترسی به موقعیت شما را دارد، شما – کاربر- می‌توانید درخواست او را بپذیرید یا رد کنید. تنها راه دسترسی به منابع سخت‌افزاری همانند حس‌گرهای GPS از طریق API است بنابراین مرورگر توانایی کنترل دسترسی به سخت‌افزار و محدود نمودن آنچه برنامه‌های کاربردی می‌خواهند انجام دهند را دارد.

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

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

 

درباره ما

فرشاد زادمهر - بنیان گذار

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

دسته ها

ما را دنبال کنید