PDA

توجه ! این یک نسخه آرشیو شده می باشد و در این حالت شما عکسی را مشاهده نمی کنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : Api چیست و چه کاربردی دارد؟



Borna66
01-24-2011, 12:37 AM
مخفف چیست؟ API به معنی رابط کاربردی برنامه نویسی یا Application Programming Interface و همچنین جنبه اساسی تشکیل وب ۲ است. اما واقعا API چیست؟ ما در این مطلب به توضیح این موضوع خواهیم پرداخت. این کلمه توجه خاصی به رابط یا Interface دارد. اگر شما هر گونه تجربه ای در برنامه نویسی داشته باشید، همه معانی و مخفف ها با شنیدن کلمه Interface به ذهنتان می آید؛ اما ما بیشتر علاقمند به دانستن معنی کلاسیک و معمولی آن هستیم.
یک رابط (Interface) یک مرز مشترک بین دو سیستم و سرویس جدا است. از جمله می توان این موضوع را برداشت کرد که بین این دو سیستم ارتباط برقرار است.
تعریف

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

می توانیم جواب این سوال را با یک کلمه بدهیم : ارتباطات. شما ممکن است بپرسید چرا ارتباط بسیار مهم است. برای جواب به این سوال تصور کنید Notepad نمی توانست که نوشته ها از MS Word یا Google Chrome یا Firefox کپی و پیست (Copy & Paste) کند. تصور کنید باید برای هر نوع نیاز در هر زمانی تمامی متن را در نرم افزار دیگر تایپ می کردید. این فقط یک از مثال های مربوط به ارتباط بین نرم افزارها است و باید بدانیم که تمامی ارتباط ها از طریق API امکان پذیر است.

Borna66
01-24-2011, 12:38 AM
واقعا API چیست؟

شما نمی توانید یک API را به راحتی اینکه این کار را در Notepad انجام می دهید، اجرا کنید. به این دلیل که عموما API ها برای کاربرانی مثل شما و من مخفی هستند. API ها قسمت هایی از کدهای نوشته شده به وسیله برنامه نویسان هستند که دقت زیادی بر روی آن ها انجام می گیرد تا به دیگر برنامه های دیگر اجازه بدهند تا بتوانند به برنامه مورد نظر وصل شود و با آن تعامل داشته باشد.
API ها به طور خاص ساخته شده اند تا عملکرد و اطلاعات انتخاب شده را نمایان کنند در حالیکه از دیگر بخش های برنامه حفاظت می کنند و اجازه برقراری ارتباط را می دهند. ایجاد یک API به زمان زیادی لازم دارد؛ چون در نهایت باعث می شود نرم افزارهای دیگر با برنامه شما ارتباط داشته باشند و برنامه شما محبوب تر شود.
http://pnu-club.com/imported/2011/01/740.jpg
به عنوان یک مثال مناسب می توان Twitter را نام برد. بیشتر مردم کلاینت توییتر مورد علاقه شان را به جای رابط وب ترجیح می دهند. شما می توانید از توییتر به با استفاده از وسیله هایی مانند گوشی های تلفن، موبایل های هوشمند، iPod یا کامپیوتر استفاده کنید. این امکانات حاصل بهره مند بودن توییتر از یک API (رابط کاربردی برنامه نویسی) (http://apiwiki.twitter.com/) عالی و منحصر به فرد است.

Borna66
01-24-2011, 12:38 AM
API چه استفاده ای دارد؟

همانطور که میدانیم، API ها اجازه برقراری ارتباط بین نرم افزارهای مختلف را آسان می کنند تا با یکدیگر ارتباط موثر داشته باشند. پس مطمئنا این گزینه می تواند برای توسعه یک پلتفرم و برای Mashup ها (برنامه ها) مناسب باشد. همچنین ما می توانیم از توییتر به عنوان یک مثال از این که چگونه API ها در توسعه پلتفرم ها موثر هستند، یاد کنیم. وقتی شما اطلاعات و داده ها را ترکیب می کنید یا از عملکرد دیگر نرم افزارها و برنامه ها برای ساخت یک نرم افزار دیگر استفاده می کنید، شما در واقع یک Mashup ایجاد کرده اید.
Mashup ها این روزها بسیار در اینترنت محبوب هستند. پیشرفت اینترنت وابسته به ارتباطات است؛ پس این می تواند ایده و دلیل عالی برای به کار گرفتن API ها باشد. این یک عمل رایج برای نمایان ساختن بخشی از عملکردها یا اطلاعات شما به عنوان API برای دیگران در وب است. گروه ها می توانند آن عملکرد و کاری را که شما ارائه می دهید با عملکردهای دیگر سرویس ها ترکیب کنند و سپس یک سرویس بهبود یافته و با عملکردهای اضافه به کاران ارائه کنند.
http://pnu-club.com/imported/2011/01/20.png
برای مثال Yelp (http://www.yelp.com/) اطلاعات مربوط به رستوران ها، هتل ها، مراکز خرید و دیگر خدمات محلی را دارا است؛ اما ممکن است کاری بی فایده برای سایت و خسته کننده برای کاربران باشد اگر آن ها سرویس نقشه خود را ایجاد کنند و به کاربران اجازه دهند تا ببینند که مقاصد مختلف کجا هستند. بنابراین بجای آن می توانند آن را با API های Google Maps ترکیب کنند و اطلاعات خود بر روی آن قرار دهند. بدینوسیله ابزار و خدمات آن ها برای کاربران افزایش می یابد. این یک نمونه عمومی استفاده از API است.

Borna66
01-24-2011, 12:38 AM
API های محبوب که شما می توانید از آن ها استفاده کنید

API ها همه جا هستند. محبوب ترین API ها متعلق به رابط های کاربردی برنامه نویسی وب یا Web API مثل Google Maps API (http://code.google.com/apis/maps/index.html)، Twitter API (http://apiwiki.twitter.com/) و Fickr API (http://www.flickr.com/services/api/) می باشد. این ها همه موارد نیستند. شما می توانید یک فهرست کامل و طبقه بندی شده از API ها در Programmable Web (http://www.programmableweb.com/) و WebMashup (http://www.webmashup.com/) پیدا کنید. در سایت های گفته شده می توانید سطح علاقه کاربران و همچنین محبوبیت API ها و خدماتی که توسط API ارائه شده اند و یا از API استفاده می کنند را ببینید.
شما در واقع از API بستگی به نیازهایتان و سطح تخصص تان استفاده می کنید. شما ممکن است بخواهید یک سرویس بزرگ در اینترنت ایجاد کنید؛ در هر زمینه که شما یک برنامه برای وب لازم داشته باشید باید از زبان های وب مثل PHP, ASP.NET, Java یا Python استفاده کنید. یک شروع خوب بازدید کردن از صفحه رسمی API سرویس مورد نظرتان است. همچنین می توانید به دنبال کتابخانه های دیگران که به زبان مورد نظر شما نوشته شده است هم بگردید. معمولا این کتابخانه ها کار شما را آسان تر و سریعتر می کنند. برای مثال توییتر تعدادی از این کتابخانه ها را در API ویکی (http://dev.twitter.com/pages/libraries) خود ارائه می دهد. شما همچنین می توانید آموزش ها، اسناد رسمی و بهترین شیوه ها را در این صفحات پیدا کنید.
API ها برای مدت زیادی به یک یا صورت های دیگری وجود داشته اند. اولین ارتباط بین برنامه ها ممکن است دقیقا بر اساس یک سند رسمی API نبوده؛ اما امروزه آن ها بخش مهی از برنامه شما به خصوص اگر در رابطه با وب باشد، هستند.
آیا تا کنون شما از API ساخته اید و یا از API استفاده کرده اید؟ نظرات و تجربه های خود را به ما بگویید.