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

سیده آمین ارمان

کاربر نگاه دانلود
کاربر نگاه دانلود
عضویت
2016/05/10
ارسالی ها
1,730
امتیاز واکنش
20,744
امتیاز
795
محل سکونت
البرز
API چیست؟ API مخفف عبارت Application Programming Interface است و می توان آن را "رابط برنامه نویسی اپلیکیشن" نامید، اگر چه در بسیاری از متون آن را "رابط برنامه کاربردی" نیز نامیده اند، انتخاب با خودتان است! بهتر است بدانید که ساخت یک API از پایه کار بسیاری دشواری است که مراحل پیچیده و بسیار تخصصی را شامل می شود. به همین دلیل در این مقاله بیشتر سعی خواهیم داشت جنبه ی کاربردی APIها را برای افراد غیر متخصص مرور کنیم.

خب برای آنکه یک تصویر کلی از API داشته باشیم، می توان API را این گونه توصیف نمود: API مجموعه ای از دستورات و توابع است که به دیگر نرم افزارها امکان دسترسی به سرویس ها یا اطلاعات عرضه شده توسط شما را می دهد. به زبان خودمانی تر، برای آنکه یک نرم افزار بتواند به اطلاعات شما دسترسی داشته باشد، آن ها را تغییر دهد و غیره، به یک واسطه به نام API نیاز دارید. عموماً APIها با توجه به برخی الگوها و استانداردها ساخته می شوند تا تمامی کاربران بتوانند از آن ها استفاده کنند و با توجه به تشخیص سازنده، می توانند رایگان و یا پولی باشند.

از کجا می تونم API تهیه کنم؟ اجازه دهید برای آنکه بهتر با مفهوم API و نحوه ی استفاده ی آن آشنا شوید، از چند نمونه استفاده کنیم.

بیشتر سرویس های آنلاین ارزشمند و مشهور APIها بخش اصلی و مرکزی کمپانی هایی همچون گوگل، SalesForce، Yelp و توییتر هستند. تمامی این کمپانی ها، اطلاعات و سرویس های خود را توسط APIها در اختیار دیگر شرکت ها و توسعه دهندگان قرار می دهند تا در برنامه های آنان مورد استفاده قرار گیرد. علاوه بر آن، بسته به میزان کیفیت و مقدار دسترسی (Access) که شما درخواست می دهید، قیمت آن APIها نیز افزایش می یابد. به طور معمول پایین ترین سطح های دسترسی با محدودترین امکانات به صورت رایگان عرضه می شوند.

سازمان های دولتی، مردمی و علمی این قبیل سازمان ها در گذشته استفاده ی چندانی از APIها نداشتند اما در این اواخر رشد چشمگیری در به کارگیری APIها در میان آنان مشاهده می شود. سازمان های دولتی در سراسر جهان، چه استانی و چه کشوری، اطلاعات خود را از طریق APIها در اختیار عموم قرار می دهند. البته برخی منتقدان درباره ی تأثیرگذاری و کاربرد این APIها و اطلاعات منتقل شده توسط آنان نظر چندان مثبتی ندارند، اما به هر حال این اقدام یک قدم کوچک در مسیری بزرگ محسوب می شود. ... و دیگر نمونه ها! حال این سوال پیش می آید که اگر کمپانی و تجارت شما عمدتاً به صورت آنلاین مدیریت می شود و یا مربوط به سرویس های مردمی و شهری است، آیا باید از APIها بهره بگیرید؟ APIها برای تجارت هایی که بر پایه ی اطلاعات و داده ها فعالیت می کنند، بسیار مفید بوده و حتی توصیه می شوند! فرض کنید که شرکت شما دارای اطلاعات آماری و حقوقی زیادی است و می خواهید نتایج چند ساله ی خود را با شرکا به اشتراک بگذارد. در این مواقع با آرشیو کردن اطلاعات در یک دیتابیس و ارائه ی API آن به همکاران خود می توانید به راحتی به آنان اجازه ی دسترسی به اطلاعات و استفاده از آنها را بدهید. از APIها می توان در کمپانی های تولید سخت افزار نیز استفاده های فراوانی کرد؛ در حقیقت استفاده از APIها در چنین کمپانی هایی روز به روز در حال افزایش است. با وجود آنکه نرم افزارها بر روی نحوه ی عملکرد سخت افزارها نظارت دارند اما ایجاد امکان دسترسی به سخت افزار از طریق API به معنای بهبود عملکرد و افزایش طول عمر آن قطعه است.

چرا API در پاسخ به این سوال که چگونه می توان دیگران را به استفاده از APIها ترغیب کرد؟ شما را در ادامه به مشاهده برخی نکات مثبت و منفی API ارجاع می دهیم تا در این راه به کمکتان آید.

نکات مثبت تبدیل رقبا به رفقا! اگر شما در زمینه ی خود اولین کسی باشید که API مربوط به اطلاعات و داده ها را در اختیار دیگران می گذارد پس قدرت و امکان اعمال آن APIها در محصولات رقیبان را دارید. بدین ترتیب آنان مجبور به همکاری با شما خواهند بود.

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

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

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

و اما نکات منفی آیا واقعاً به API نیاز دارید؟ APIها همانند مبحث "سرویس های ابری" می مانند؛ خیلی ها صرفاً برای آنکه به روز باشند از آن استفاده می کنند، بدون آنکه کاربرد صحیح آن را بدانند. اما آیا شما نیز باید این کار را بکنید؟ آیا نیازی به استفاده از آن هست؟ ساخت و مدیریت APIها نیازمند نیروی انسانی و منابع بیشتر است، آیا در حال حاضر این موارد را در اختیار دارید؟ دلایل امنیتی اگر همه چیز به درستی و با دقت پیش برود، APIها خطری امنیتی برای شما محسوب نمی شوند. اما هرچه راه های ارتباطی با سازمان را بیشتر کنید، راه های نفوذ به آن نیز افزایش می یابد و از آنجایی که APIها به برخی از امکانات سازمان دسترسی می دهند، در صورت استفاده ی نادرست و بسته به کاربردشان، می توانند خسارت های زیادی به بار آورند.

برای حل این قبیل مشکلات چندین راه حل وجود دارد: دسترسی به API را توسط یک سیستم شناسایی کاربر قدرتمند حفاظت کنید، حتی اگر آن API را به رایگان ارائه می کنید. سعی کنید سرویس API خود را بر روی سروری جداگانه و متفاوت از دیتابیسی که به آن متصل می شود، راه اندازی کنید. اگر به کاربران خود امکان اضافه کردن و یا ویرایش اطلاعات را نیز می دهید، خود را برای مقابله با حملات Injection آماده کنید . یکی دیگر از حملات سایبری خطرناک Denial of Service یا DOS نام دارد. راهکارهای حفاظتی برای مقابله با این حملات را رعایت کنید.

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

برخی موضوعات مشابه

بالا