كل ماتود معرفته عن الـ API واجهة برمجة التطبيقات Application Programming Interface. ماهو API و بيئة التقنية للتطبيقات.
ماهو ال API ؟
الجواب على السؤال الاكثر طلباً ماهو ال API. هي واجهةً برمجية تسمح لتطبيقان بالتفاعل مع بعضهما دون أي تدخل من المستخدم. فهي عبارة عن مجموعة من الوظائف والاجراءات يتمْ تعريف رمز البرنامج الذي يمكن الوصول اليه او تنفيذه مما يعطي اختصار حركة البيانات بين بعضهما. وتقدم ميزة الى العميل من خلال نقل بيانات معينة ضمن الخادم دون الحاجة الى معرفة كيفية تنفيذها.
كيف يعمل ال API
ذكرنا أنه لا توجد حاجة للعميل لمعرفة كيفيةَ عمل واجهة برمجة التطبيقات API، لكن نحن موقع Mofeeed سوف نذكر لك مثال بسيط لشرح وفهم كيفيةَ عمل API. تخيل أنك تقف على إحدى نوافذ البيع لمطاعم KFC لتقوم بطلب وجبة طعام من موظف خدمة الزبائن في مطعم لتحصل على الوجبة خلال دقائق من ذاك الشخص ذاته، فالعملية التي تمت في الكواليس من لحظة طلبك للوجبة الى حين حصولك عليها تعتبر مشابهة لعمل Application Programming Interface API. فالموظف هنا اختصر عليك الوقت للذهاب الى الشيف لتخبره ماتريد والانتظار لحين الحصول على الوجبة. كذالك تعمل API ببساطة.
إقرأ أيضاً: أفضل 10 قنوات يوتيوب لتعلم البرمجة 2022 للمبتدئين
أنواع ال API
بالحديث والغوص في البرمجة الخاصة من الواجهة لبرمجة التطبيقات نجد ثلاث انواع رئيسية:
Open APIs
تعتبر هذه الأنواع من واجهة برمجة التطبيقات متاحة الى جميع العملاء لإستخدام مثل OAuth API من غوغل كما لا توجد أي قيود على الاستخدام وتعرف أيضاً باسم واجهة برمجة التطبيقات العامة.
Partner APIs
واجهاتْ برمجة التطبيقات المشتركة تكون محددة ضمن حقوق او تراخيص للوصول الى هذا النوع من Application Programming Interface. لأنها غير متاحة الوصول للعملاء كافة.
Internal APIs
واجهات برمجة التطبيقات API الداخلية، توفر نقطة الوصل البرمجية بتقديم خدمة تعني فريق خاص داخل شركة وتم تطوير هذا النوع من قبل الشركات للإستخدام في أنظمة الداخلية مما يساعد الفرق العاملة على رفع الانتاجية.
إقرأ أيضاً: افضل 4 منصات ال MOOC الدروس الجماعية مفتوحة المصدر لعام 2021
ماهي واجهات برمجةْ تطبيقات الويب
APIs هى واجهةٌ تستخدم لخادم ويب او متصفح Web لا سيما بيوجد نوعان من واجهاتْ برمجة تطـبيقات ويب هما:
1- API من ناحية الخادم
برمجةَ API من طرف خادم تتكون من نقطة نهاية واحدة او اكثر مكشوفة بشكل عام لنظام محدد لرسائل الاستجابة والطلب، يتمُّ التعرف عنها عادة في XML او JSON.
2- API من جانب العميل.
هذه برمجة API من جانبُ العميلْ في واجهة برمجةَ تساعد على توسيع وظائف داخل مستعرض ويب او عميل HTTP أخر.
إذا كنت مهتم كثيراً في تطوير التطبيقات يجب عليك قراءة هذا المقال: Flutter هي افضل خيار لتطوير تطبيقات الهواتف الذكية
أمثلة على واجهة برمجةَ تطـبيقات WEB
- تمكن Google Maps API للمطورين بتضمين خرائط جوجل على صفحات Web باستخدام واجهة جافاسكريبت او Flash.
- تتيح YouTube API الى مطورين دمج مقاطع فيديو YouTube ووظائفهُ في مواقع Web او تطـبيقاته.
- يقدم Twitter API خدمةٌ مزدوجة واحدةً من واجهة برمجةْ تطبيقـات Rest تسمح للمطور وصول الى بيانات Twitter علاوة على ذلك توفرُ طرقاً لمطورين للتفاعل مع Twitter Searsh.
- تُتيح Amazon API الى المطورين وصول الى مجموعة منتجات أمازون.
هل تحتاج معرفة افضل لغة برمجة لبتدأ التعلم اليك هذا المقال: أفضل لغة برمجة للمبدئين
أدوات اختبار ال API
Postman
هو مكون إضافي من غوغل Chrome يقدم اختبار لخدمات API بالاختبار اليدوي او HTTP كما أنه يعد اختبار قوي للتحقق من خدمات الـ Web
ميزات برنامج
- من خلال استخدام بوستمان يمكن استخراج جميعُ بيانات ويب API الحديثة.
- يتيح لك انشاء محادثات ريست داخل التـطبيق لاسيما حفظ كل محادثة كجزء من مجموعةٌ يتم تنفيذها مستقبلاً.
- يعتبر بوست مان الأكثر موثوقية لإرسال و استقبال المعلومات.
Ping-API
يعتبر اختبار API ويسمح لنا بكتابة نص اختبار في JavaScript و CoffeeScript. لاختبار Application Programming Interfac الخاصة بك، يُمكنك من فحص HTTP API مع بيانات الطلب والاستجابة.
مميزات ال Ping API
- يتيح لك الجدولة في الاختبار وتحديد الزمن المناسب لإجراء الاختبارات.
- يساعدك في التحقق من عمليات ادارة بيانات بعد تسجيل الدخول CRUD.
vREST
توفرُ أداة vREST API حلاً ممتاز عبر الانترنت للاختبار الآلي والتسجيل التلقائي، REST/ HTTP APIs/ RESTful APIs.
ميزات الـ vREST
- يوفر أداة شاملة للتحقق من صحة واجهة برمجةَ تطبـيقات ريست الخاصة بسرعة كبيرة.
- يتيح لك تقديم تطبيـقات ويب خالية من المشاكل مع جهد أقل في اختبار API.
إقرأ أيضاً: مواقع الديب ويب
لماذا نحتاج ال API
- يساعد اختصار Application Programming Interface برنامجين او نظامين او سيرفرات للتواصل تبادل بيانات مع بعضهما البعض.
- يتيح لك تضمين المحتوى الخاص بك في اي موقعْ او تطبيق بشكلٍ أكثر كفاءة.
- تمكنك واجهاتْ برمجه تطـبيقات وصول الى مكونات التطبيق لتقديم الخدمات والمعلومات اكثر مرونه
- كما يمكن نشر المحتوى الذي تم انشاؤه تلقائيا.
- يسمح للمستخدم او الشركة بتخصيص المحتوى والخدمات التي يستخدمونها باكثر من غيرهم.
- يحتاج برنامج الى التغيير بمرور الـوقت وتساعد هذه الواجهه على توقع التغييرات المستقبلية بافضل التقنيات.
اهم ما ورد في هذا المقال
لماذا نستخدم الـ API و ماهو Application Programming Interface؟ هو عبارةً عن WebServise حيث يتمْ استخدامها للتواصل ما بين Apps او الانظمة او السيرفرات.
على سبيل المثال مرة أخرى:
نفترض انك تبحث عن معرفة التوقيت الان في مدينة نيويورك، هنا يأتي دور API بسهوله من خلال السماح لك لاستخدام احد السيرفرات التي تكون مخزنة عليها بيانات ليسمح لك بقراءتها لاسيما معرفة التوقيت.
السؤال هنا: كيف تتم هذه العملية المعقدة ؟
هل سمعت بـ HTTP في الواقع هذا البروتوكول هو المسؤول عن الطلبات المرسلة لاستيراد و جلب تلك المعلومات التي كنت تبحث عنها وهذه العملية تتم باستخدام دوال مسؤولة على الطلبات هذه الـ طلبات السيرفر التي نستخدمها غالباً ومنها:
- جلب بيانات من السيرفر نستخدم GET.
- لإضافة بيانات جديدة نستخدمPOST.
- لتعديل عنصر موجود سابقاً نستخدم PUT.
- لحذف عنصر نستخدم DELETE.
فمن خلال هذه العملية التي تبدو سهله تتم عملية جلب بيانات المراد الكشف عنها من قبل المستخدم عبر الـ (API) Application Programming Interface.