
لعلك تتسأل ماهو API ؟ API او Application Programming Interface وباللغة العربية واجهة برمجة التطبيقات. API ببساطة هى نقطة الوصل بين بيئة تطويرية معينة والمطورين , حتى تتيح لهؤلاء المطورين الاستفادة من خدامات هذه البيئة بدون الحاجة إلى بناء كل شئ من الصفر . وبشكل عام هدف API هو اخفاء التفاصيل Encapsulation و ابراز طريقة الاستفادة من الكود .
مثال من الواقع لتقريب الفكرة, عندم تنتج شركات محركات سيارات محرك جديد فانها تقوم بتغليف هذا المحرك وتقوم بطرحه بالسوق لتستفيد منه الشركات لبناء منتاجاتها الخاصة كالسيارات مثلا وقد تستخدمه الشركة بدون الدخول فى تفاصيل تصنيعه فما يهم الشركة هو كيف تستخدم المحرك لبناء منتجها وليس كيف صُنع المحرك .
هذا بالضبط ما يحدث فى البرمجة عندما نستخدم كلاس او دالة او Plugin فى مشروعنا , فما يهمنا فعلًا هو كيف نستخدمه ليخدم مشروعنا وليس كيفية عمله .
وإليك بعض الامثلة عن API
- للتعرف اكثر على قواعد البيانات يمكنك متابعة المقالة هنا
- للتعرف اكثر على PHP يمكنك متابعة المقالة هنا
انواع API
هناك ثلاث طرق لسياسات الوصول إلى API.
خاص Private
API للاستخدام الداخلي فقط. هذا يمنح الشركات أكبر قدر من التحكم في API الخاصة بهم.
شريك Partner
يتم مشاركة API من هذا النوع مع شركاء أعمال محددين.
عام Public
هذا النوع من سياسة الوصول إلى API يكون متاح للجميع وبالاسفل قائمة ببعض هذه ال API’s.
أمثلة عملية على API’s
- Google API’s : حيث توفر جوجل مجموعة كبيرة من واجهات البرمجة مثل خدامات الترجمة Google Translate API وخدامات الخرائط Google Maps API واليوتيوب YouTube API.
- Facebook API’s : يوفر أيضًا الفيسبوك مجموعة من API’s مثل Facebook social graph ويستخدم فى الوصول لمجموعة من البيانات العامة للمستخدمين.
قائمة ب API’s مجانية يمكنك استخدامها فى مشروعك القادم
هذه القائمة الرائعة على Github تحتوي على الكثير من API’s المجانية التى يمكنك استخدامها فى تطوير الويب فى مشاريعك القادمة.
واجهات برمجة تطبيقات REST
تم تصميم خدمات الويب فى الأساس باستخدام SOAP وهو بروتوكول للتواصل بإستخدام بروتوكول HTTP وصيغة XML , على الرغم من ذلك فإن معظم تطبيقات الويب الحديثة تستعمل واجهة البرمجة بإستخدام REST.
تم طرحه فى الأساس عام 2000 على يد Roy Fielding , وهو مجموعة من الهياكل و مبادئ التصميم المستخدمة فى بناء النظم الموزعة وتضمن تواصل هذه النظم وتبادل أي نوع من أنواع البيانات مثل (الصور والفيديوهات وإلخ) ولعل أكثر ما ساهم فى إنتشار REST هو السهولة النسبية فى بناء التطبيقات والمرونة الكبيرة التى يتمتع بها.
في واجهة برمجة تطبيقات REST ، يمكن أن يكون المورد أي شيء تقريبًا ، على سبيل المثال قائمة بالتغريدات على موقع تويتر او حالة الطقس فى بلد معين. كل من هذه الموارد قابل للعنونة ، والذي في حالة واجهات برمجة تطبيقات REST المستندة إلى الويب يكون عنوان URL ، فعلى سبيل المثال https://api.twitter.com/1.1/users/show?screen_name=twitterdev
حينما يقوم المستخدم لل API بطلب العنوان يقوم API بالرد باي نوع من انواع الصيغ مثل JSON او صورة او حتى صفحة Web.
يوفر API ميزة إرسال البيانات للتطبيقات الأخرى ليعالج التطبيق البيانات بالطريقة التى يريدها مما يوفر مرونة كبيرة فى إستخدام البيانات ولكن هذا ايضًا له اثار جانبية حيث أنه ابطئ من حالة معالجة البيانات ثم إرسال المنتج النهائى للمستخدم.
فيديو ملخص للمقالة
4 تعليقات على “ماهو API وما فائدته ؟”
ممكن لو سمحت اركب api ده https://disease.sh/ ازاى على موقعى
من افضل الفيديوهات اللي بيشرح الAPI
من افضل الفيديوهات في شرح الAPI
https://youtu.be/MjfFHQbOzGM
دورة شرح APİ
https://www.youtube.com/watch?v=QgDhnc5QVx8&list=PLUBtxqaER05YVzGue7JpmWeJI70TlZK6e