واجهة برمجة التطبيقات Application Programming Interface: ما هي؟ ولم قد أحتاجها؟

0

لا بد أنك سمعت الكثير حول مصطلح واجهة برمجة التطبيقات API ضمن مجتمع المبرمجين، حيث أنه يشير إلى مفهوم تقني بالغ الأهمية ومستخدم بكثرة في كل مكان تقريبًا على شبكة الإنترنت، لذا سنذهب معًا في رحلة برمجية نبين فيها ما هو الـ API ولماذا يستخدمه المبرمجون؟

واجهة برمجة التطبيقات API

API هو اختصار لـ Application Programming Interface وتعني واجهة برمجة التطبيقات وهي تقنية تتيح للتطبيقات التواصل مع بعضها البعض برمجيًا.

بشكل عام يقصد أغلب المبرمجون بقول API واجهات برمجة التطبيقات التي تسهل نقل البيانات والتي تقدم للمبرمج معلومات على هيئة XML أو JSON ليستخدمها ضمن البرامج والمواقع الخاصة به. فمثلًا تطبيق الطقس يستخدم API تزوده بالمعلومات الخاصة بالطقس في كل مدن العالم ومهمة البرنامج فقط عرض هذه المعلومات، ولكن مفهوم الـ API أوسع من ذلك بكثير.

اقرأ المزيد: كيفية إجبار سوق بلاي Play Store على تحديث نفسه في هواتف الأندرويد

أهمية API

يسهل مفهوم واجهة برمجة التطبيقات حياة المبرمجين كافة، حيث يحتاج المبرمج إلى إضافة بعض الخصائص والميزات ضمن التطبيقات المختلفة والتي تتواجد على شكل API، التي لن يكون من السهل بنائها في كل مرة من الصفر.

لنقل مثلًا أن المبرمج يود إضافة تشغيل الكاميرا إلى التطبيق، فإن المنصة التي يطور تطبيقه لها سواء أندرويد أو ويندوز أو أي منصة أخرى توفر له API خاصة بالكاميرا يمكنه إضافتها ببضع أسطر أو حتى سطر واحد وتعمل الكاميرا بشكل جيد.

هذا النوع من الـ API توفره الشركات المسؤولة عن أنظمة التشغيل للمبرمجين، ليتمكنوا من تشغيل الميزات المختلفة في النظام بأفضل شكل ممكن وبطريقة مكتوبة مسبقًا من قبل مبرمجين محترفين في الشركة، وتكون الـ API عبارة عن صلة وصل بين التطبيق الجديد والميزة المسؤولة عنها، سواء كانت الكاميرا أو الموقع Location أو متصفح الإنترنت أو البطارية أو أي ميزة أخرى.

وفي حال كانت واجهة برمجة التطبيقات مسؤولة عن تقديم معلومات JSON أو XML يكون المفهوم مختلف قليلًا، حيث يمكن لأي موقع أو مصدر معلومات أن يقدم API للمطورين لتقديم هذه المعلومات بطريقة منظمة، وتكون الـ API هنا عبارة عن رابط محدد مهمته التواصل مع قاعدة البيانات بطريقة منظمة وتقديم البيانات المختلفة إلى المطور ليقوم المطور بعد ذلك بعرضها ضمن التطبيق أو الموقع بأي شكل يريده.

واجهة برمجة التطبيقات

من أشهر الأمثلة على هذا النوع هي الـ API المسؤولة عن أسعار العملات والطقس والأخبار وغيرها.

كيف تعمل واجهة برمجة التطبيقات

تتكون أي API من قسمين رئيسيين، الأول هو الوصف الذي يشرح طريقة عرض البيانات وتبادلها، والقسم الثاني هو البرنامج الذي يبنى بطريقة تناسب الوصف الذي قدمه القسم الأول ليستقبل البيانات ويعرضها على شكل معلومات مفيدة للمستخدمين.

يقوم الموقع أو البرمجية الخاصة بتقديم البيانات بنشرها بشكل واضح ومحدد، بينما يقوم البرنامج أو الموقع المسؤول عن عرض هذه البيانات بقراءة ما تم نشره وتنظيم عرضه.

اقرأ المزيد: مراجعة هاتف Galaxy Note 8

أنواع واجهة برمجة التطبيقات

يوجد ثلاثة أنواع أساسية من الـ API بحسب أسلوب برمجتها والتعامل معها وهي:

  1. API الميزات البرمجية: وهو النوع الذي تكون فيه الـ API مسؤولة عن تسهيل البرمجة وتمكين المبرمج من استخدام ميزات كثيرة وتضمينها في برنامجه دون الحاجة إلى برمجتها من الصفر، مثل إضافة عناصر التعامل مع قواعد البيانات دون كتابتها بالتفصيل.
  2. API المعلومات: وغالبًا ما تكون عنوان أو رابط بسيط URL يقدمه موقع أو جهة معينة تملك بيانات وتقوم بتنظيمها بشكل متعارف عليه مثل XML أو JSON، ويتيح الرابط للمبرمجين الحصول على هذه البيانات بشكل مجاني أو مأجور وعرضها في التطبيقات والمواقع الإلكترونية مثل مواقع الطقس والكتب والأخبار والأفلام والعملات.
  3. API البرامج عن بعد: وهي نوع من الـ API يمكن من خلاله تشغيل برامج موجودة في مكان بعيد عن طريق الاستدعاء المتاح لهذه البرامج ليتم استخدامها كما لو أنها موجودة محليًا بالفعل، ومن الأمثلة عليها المواقع التي يستخدمها الكثيرون عبر الشبكة بدلًا من تنصيب برامج الأوفيس.

لماذا تستخدم الـ API؟

تتيح فكرة واجهة برمجة التطبيقات وخاصة فيما يتعلق بتقديم البيانات من الجهات المختلفة الكثير من المرونة لإنشاء تطبيقات غير محدودة ومفيدة، هذا إلى جانب أن الـ API تقوم بالكثير من العمل بالنيابة عن المبرمج وتقدم له البيانات والميزات المختلفة بشكل ممتاز ومبرمج مسبقًا.

يمكن برمجة الـ API لتقوم بتحديث البيانات تلقائيًا دون الحاجة إلى تعديلها بشكل يدوي، بل تقوم الـ API بعملية القراءة والتنظيم والتحليل وتكون نتيجتها معلومات مفيدة يمكن استخدامها بشكل غير محدود.

في الوقت الحالي لا يمكن لأي مبرمج الاستغناء عن مفهوم الـ API وكلما ازداد حجم البيانات وحجم البرنامج أو الموقع الذي يتم بناؤه كلما ازدادت أهمية استخدام عدة أنواع من الـ API لتضمين ميزات برمجية بدلًا من كتابتها من الصفر، والذي قد يكون مستحيلًا في بعض الأحيان، إضافة لاستيراد معلومات مفيدة ومحدثة لعرضها للمستخدمين وهو أمر لا يمكن إلا للجهات المسؤولة عن جمع هذه البيانات بالقيام به.

اقرأ المزيد: أفضل سبعة طرق للوصول إلى واي فاي الجيران بسهولة 🤭!!

أمثلة شهيرة عن استخدام واجهة برمجة التطبيقات

دعونا نتعرف على بعض أشهر الـ APIs الموجودة والتي تقدمها الشركات للمبرمجين:

  • خرائط غوغل: تقوم شركة غوغل بتقديم خدمة الخرائط والتي يمكن استخدامها بشكل منفصل للتعرف على كل مواقع العالم وأفضل الطرق بين أي موقعين والمسافات الفاصلة بين أي نقطتين، إضافة إلى معرفة موقع مكان معين عند البحث عنه.
    لكن الأمر لا يتوقف هنا فشركة غوغل تقدم API خاصة بخدمة الخرائط مهمتها إتاحة هذه الخرائط للمبرمجين ليقوم المبرمجون بتضمينها ضمن التطبيقات والمواقع الخاصة بهم، وعن طريق ذلك أصبحت خرائط غوغل هي المعيار الأساسي العالمي المسؤول عن الخرائط ونجدها في كل مكان.
  • IBM واتسون: وهي خدمة API تقدم فيها شركة IBM الشهيرة ثمار جهدها وتعبها في مجال الذكاء الاصطناعي بشكل عام بما فيه من ميزات مختلفة ومعالجة اللغات الطبيعية بشكل خاص. تتيح هذه الخدمة إمكانية استخدام أنظمة ذكية ضمن التطبيقات والمواقع للتعرف على الوجوه والكائنات في الصور وقراءة النصوص وبالتالي فهي تقدم للمبرمج الميزات الذكية دون الحاجة إلى العمل لسنوات لتطوير مثل تلك الميزات.
  • موقع Twitter: يتيح موقع تويتر الشهير API خاصة به يمكن استخدامها على نطاق واسع وبشكل فعال. تتيح للمستخدمين إمكانية تسجيل الدخول عن طريق حساباتهم على تويتر أو مشاركة التطبيق أو الموقع الخاص بالمبرمج إلى أصدقائهم في موقع توتير، مما يسهل عليهم استخدام المواقع دون الحاجة لإنشاء حسابات منفصلة لكل موقع، إلى جانب إمكانية عرض أحدث التغريدات ضمن مواقع أخرى غير تويتر.
  • موقع Facebook: لا يمكن إهمال موقع فيسبوك بوجود أكثر من مليار مستخدم نشط ضمنه، حيث يوفر واجهة برمجة التطبيقات الشهيرة التي تمكن المستخدمين من تسجيل الدخول إلى المواقع المختلفة عن طريقها، إلى جانب عدة ميزات تشمل تحليل البيانات وإنشاء تطبيقات صوتية وغيرها.
  • موقع Slack: من أشهر المواقع التي توفر API للشركات ليقوم الموظفون بالتواصل مع بعضهم البعض، وذلك ضمن بيئة مهنية متكاملة تسمح بتبادل الصور والملفات والروابط وإنشاء الأقسام المختلفة.

لا يسعنا ذكر كل الـ APIs  المتاحة عبر الشبكة فهي كثيرة جدًا حيث يمكن أن تجد لكل فكرة تدور في ذهنك موقع يقدم بيانات أو خدمات مناسبة لها.

اقرأ المزيد: أقوى وأفضل برامج التحميل للانترنت لأجهزة ويندوز لعام 2018 !

0

شاركنا رأيك حول "واجهة برمجة التطبيقات Application Programming Interface: ما هي؟ ولم قد أحتاجها؟"