استخدام API في تطوير تطبيقات الويب
عناصر الموضوع
1- ما هي APIs؟
2- فوائد استخدام مجمعات واجهات برمجة التطبيقات.
3- كيف تعمل APIs؟
4- ما هي واجهة برمجة التطبيقات APIs؟
5- كيف تعمل واجهة برمجة التطبيقات APIs؟
6- أنواع واجهات برمجة التطبيقات.
واجهات برمجة التطبيقات، Application Programming Interfaces، هي وسائل برمجية تتيح التطبيقات من الاتصال مع بعضها البعض.
تؤدي APIs دوراً رئيسًيا في إعداد البرمجيات المتقدمة، حيث تتيح بتبادل البيانات والوظائف بين متنوع الأنظمة والخدمات بأسلوب موحد وآمن. عن طريق استعمال APIs، يقدر للمطورين تشييد تطبيقات أكثر صعوبة وتحاورية من دون الداع لكتابة كل جزء من الكود من البداية.
1- ما هي APIs؟
- واجهات برمجة التطبيقات، Application Programming Interfaces، هي رابطة من البروتوكولات والقواعد التي تعين طريقة يقدر إلى التطبيقات الاتصال مع بعضها البعض.
- تشغل APIs كممر يتيح للبرامج بطلب واستعمال الوظائف والبيانات من برامج أو خدمات أخرى بوسيلة قياسية.
- عن طريق الـ APIs، يقدر للمطورين الانتفاع من خدمات على سبيل المثال خرائط Google، تويتر، أو حتى أنظمة الدفع الإلكتروني من دون داع لعلم تفاصيل العمل الداخلي لتلك الأنظمة.
- تستعمل APIs في مجالات مختلفة على سبيل المثال التطبيقات الويب، الهواتف المحمولة، وأجهزة إنترنت الأشياء (IoT)، حيث تصير حاسمة في تقدم البرمجيات الحديثة. [1]
2- فوائد استخدام مجمعات واجهات برمجة التطبيقات
يقدم استعمال مجمعات واجهات برمجة التطبيقات بين هيكل التطبيق عدة من الامتيازات:
تكامل مبسط:
يقدر للمطورين التعاون مع واجهة برمجة تطبيق واحدة عِوَض عن إدارة اتصالات مختلفة وتنسيقات بيانات متنوعة.
تحسين الأداء:
عن طريق خفض عدد طلبات HTTP، يقدر للتطبيقات العمل على نحو أكثر كفاءة، حيث يعمل على أوقات استجابة سريعة.
تحسين معالجة البيانات:
يقدر إلى مجمعات البيانات معالجة البيانات سابقا، حيث يتأكد أن ينال العميل المعلومات بتنظيم جاهز للاستعمال.
قابلية التوسع:
من البسيط تزويد أو حذف مصادر واجهة برمجة التطبيقات في مستوي المجمع دون السيطرة على تطبيق العميل، حيث يصبح النظام أكثر إمكانية على التكيف.
فعالية التكلفة:
من المحتمل أن تعمل الطلبات الأقل لواجهات برمجة التطبيقات إلى تخفيض التكاليف، بالأخص مع واجهات برمجة التطبيقات التي تضع رسومًا على الاستعمال. [2]
3- كيف تعمل APIs؟
- واجهات برمجة التطبيقات (APIs) تقوم بصفة وسيط بين تطبيقين أو أكثر، تتيح بمشاطرة البيانات والوظائف بينهم على نحو مؤمن وفعال.
- حينما يحتاج تطبيق محدد معلومات أو خدمة، يبعث طلب API (API call)، الذي يُعرف كذلك بطلب HTTP، إلى الخدمة المرادة.
- هذا الطلب يحوي تفاصيل معينة عن المعلومات أو الوظيفة المرادة وغالبًا ما يحوي مفتاح API للتيقن من الهُوِيَّة.
- النظام المقابل للطلب يعالجه، ويرجع البيانات المرغوبة أو نتيجة الوظيفة إلى التطبيق الطالب، غالبا في صورة JSON أو XML.
- هذه العملية تحكم التعامل والتفاعل بين البرامج بوسيلة معيارية، وتخفض من الداع لكتابة واجهات تفاعل صعبة من الصفر. [3]
4- ما هي واجهة برمجة التطبيقات APIs؟
- API هو اختصار لـ Application Programming Interface ومعناها واجهة برمجة التطبيقات، وهي تكنولوجيا تسمح للتطبيقات الاتصال مع بعضها البعض برمجيًا.
- واجهة برمجة التطبيقات هي الطريقة التي يرغب فيها أكثر المبرمجين لتبسيط نقل البيانات، التي تعرض للمبرمج معلومات على صورة XML أو JSON ليستعملها داخل البرامج والمواقع الخاصة به.
- يطلب البرنامج الذي يرغب إلى البلوغ إلى المعلومات مثل، تكلفة غرف فندق معين لتواريخ محددة من برنامج آخر، واجهة برمجة التطبيقات المرتبطة به في أثناء تعيين احتياجات طريقة توفير البيانات أو الوظائف.
- إضافةً إلى ذلك يعمل البرنامج الآخر بإعادة البيانات أو الوظائف التي يحتاج إليها التطبيق السابق باستعمال ذات وسيلة الاستقبال.
- حيث تتضمن كل واجهة برمجة تطبيقات يتم تحقيقها بوساطة استدعاءات الوظائف أو عبارات اللغة التي تحتاج برنامجًا إلى عمل إجراءات وخدمات محددة.
- واستدعاءات الوظيفة Function calls هي جمل معدة من أسماء وأفعال على سبيل المثال:
- ابدأ الجِلسة أو اعمل على بإنهائها.
- احصل على طرق الراحة لنوع غرفة فردية.
- استرداد أو استعادة كائنات من الخادم.
5- كيف تعمل واجهة برمجة التطبيقات APIs؟
- تتضمن أي API من جزأين أساسيين، الأول هو الوصف الذي يبين أسلوب عرض البيانات وتبادلها، والقسم الثاني هو البرنامج الذي ينشئ بوسيلة تلائم الوصف الذي عرضه القسم الأول لتلقي البيانات، ويقدمها على هيئة معلومات نافعة للمستعملين.
- يعمل الموقع أو البرمجية الخاصة بعرض البيانات بنشرها على نحو واضح ومخصص، بينما يعمل البرنامج أو الموقع المتحكم عن تقديم هذه البيانات بقراءة ما نُشِر وترتيب عرضه.
- تتكون واجهة برمجة التطبيقات APIs من عدة من القواعد المبينة مسبقاً، التي توضح آلية اتصال التطبيقات مع بعضها البعض، وتقع بين خادم الويب Web Server والتطبيق لتقوم كطبقة وسيطة تعالج عملية نقل البيانات بين الأنظمة طبقا الخطوات الآتية:
- ينشئ تطبيق العميل نداء إيه بي آي API call لأخذ المعلومات، ويطلق عليه باسم طلب
- تتم تعامل الطلب من التطبيق وصولا إلى خادم الويب عن طريق محدد الموارد الموحد URI الخاص بالواجهة.
- بعد تسلم طلب صحيح تعمل الواجهة بمحادثة البرنامج أو الخادم الخارجي.
- يبعث الخادم استجابة Response تحوي المعلومات المرادة إلى الواجهة.
- تحول الواجهة البيانات إلى التطبيق الذي احتاج إليها. [4]
6- أنواع واجهات برمجة التطبيقات
يوجد الكثير من واجهات برمجة التطبيقات (APIs) المتنوعة، ولكل منها غرضها ووظيفتها المميزة. عدة من الأكثر شهرة أنواع واجهات برمجة التطبيقات تحتوي على:
واجهات برمجة تطبيقات RESTful:
تحرك الدولة التمثيلية (REST) واجهات برمجة التطبيقات هي نوع من واجهة برمجة التطبيقات المتكلة إلى الويب التي تستعمل طلبات HTTP للبلوغ إلى البيانات ومعالجتها.
يتم استعمالها على نحو كبير في تحديث الويب، وتتيح بنقل البيانات بتنظيم قياسي بسيط الفهم.
واجهات برمجة تطبيقات SOAP:
تعد واجهات برمجة تطبيقات بروتوكول البلوغ إلى الكائنات السهلة (SOAP) نوعًا آخر من واجهة برمجة التطبيقات المتكل إلى الويب الذي يستعمل XML لنقل البيانات.
تستعمل Soap APIs في تطبيقات الشركات، وتتيح بالتفاعلات الصعبة بين التطبيقات.
واجهات برمجة تطبيقات GraphQL:
GraphQL هي لغة استطلاع لواجهات برمجة التطبيقات التي حدثها فيسبوك.
فهو يقدر المطورين من تعيين بنية البيانات التي يتطلبون إليها واستقبال تلك البيانات فقط ردًا على ذلك.
فتح واجهات برمجة التطبيقات:
Open APIs هي واجهات برمجة تطبيقات متوفرة للجمهور يقدر لأي فرد البلوغ إليها.
يستعملها المطورون في الأغلب لتشييد تطبيقات الطرف الثالث التي تتعامل مع الخدمات الحالية.
واجهات برمجة التطبيقات الداخلية:
تستعمل واجهات برمجة التطبيقات الداخلية ضمن المؤسسة لقدرة الاتصال بين الإدارات أو التطبيقات المتنوعة.
واجهات برمجة التطبيقات للشريك:
تتيح واجهات برمجة التطبيقات للشركاء للمؤسسات بالاتصال مع شركاء أو موردين مخصصين.
يقدر كذلك تنظيم واجهات برمجة التطبيقات طبقا لحالات الاستعمال وسياسات الإصدار المرتبطة بها. [5]
في الختام، إن إدراك الأنواع المتنوعة من واجهات برمجة التطبيقات APIs، وبروتوكولات API، ووسائل طلبات API أمر واجبا للمطورين الذين يهدفون إلى إعداد تطبيقات ويب متقدمة.
المراجع
- aws.amazonما المقصود بواجهة برمجة التطبيقات (API)؟ -بتصرف
- apidogما هو مجمع واجهات البرمجة API؟ كيف يعمل وما هي الفوائد؟-بتصرف
- qalamcodeما هو API؟ – شرح واجهة برمجة التطبيقات-بتصرف
- dafaterما هي واجهة برمجة التطبيقات (API)؟ وما هي استخداماتها؟-بتصرف
- asteraما الذي ترمز إليه API وكيف تعمل؟-بتصرف