محاضرة حول الويب API

Jul 10, 2024

محاضرة حول الويب API

المفاهيم الأساسية

  • API:

    • Application Program Interface
    • وظائف يمكن الوصول إليها من خارج نطاق التطبيق
    • يمكن الوصول إلى وظائف التطبيق مثل تغيير خلفية سطح المكتب، التحكم في الفوليوم، إغلاق الويندوز، والتفاعل مع برامج مثل أوتلوك ووورد وإكسل.
  • Web API:

    • هو API عادي يستطيع المستخدمون الوصول إليه عبر الإنترنت.
    • تحويل وظائف API لتكون متاحة عبر الإنترنت وتسهيل الوصول إليها من أي مكان في العالم.

مناقشة حول مفهوم الويب API

  • الكورس يركز على RESTful API، لكن هناك أنواع أخرى مثل SOAP وGraphQL وgRPC وغيرها.
  • يجب فهم المفاهيم الأساسية قبل البدء في كتابة الأكواد.

مثال التوضيح

  • وظيفة GetAllStudents:
    • عند تحويلها لـ Web API يجب استضافتها على سيرفر بحيث يمكن لأي شخص الوصول إليها من خلال الإنترنت.
    • السيرفر يكون شغال 24/7.

السيرفر والكلاينت

  • السيرفر:

    • جهاز يحتوي على برنامج يعمل كخادم لتقديم خدمة معينة.
    • يمكن أن يكون خادم ويب، خادم بريد إلكتروني، أو خادم معالجة الصور.
  • الكلاينت:

    • يمكن أن يكون عدة أنواع من التطبيقات مثل تطبيقات الجوال، سطح المكتب، الويب، التلفاز، السيارات، سيرفرات الويندوز.
    • يرسل طلبات للخادم لتقديم خدمات معينة مثل قائمة الطلاب.

العلاقة بين السيرفر والكلاينت

  • العلاقة غير مستمرة (stateless):
    • الكلاينت يرسل طلب للخادم، الخادم يرد، والانتهاء.
    • لا يوجد ارتباط مستمر بينهما.

تنسيق البيانات

  • HTTP Protocol:

    • يستخدم لنقل البيانات بشكل نصي يجعلها مفهومة لجميع أنواع التطبيقات وأنظمة التشغيل.
  • Formats:

    • JSON وXML هما الأكثر شيوعًا.
    • JSON أسرع وأكثر كفاءة.

الفوائد من Web API

  • Interoperability:
    • إمكانية تواصل أنظمة التشغيل ولغات البرمجة المختلفة مع بعضها عبر الويب API.

RESTful API

  • تعد الأكثر شيوعًا واستخدامًا بين أنواع الـ Web API.
  • تعتمد على بروتوكول HTTP.

النقاط الأساسية حول الويب API

  • Web API هو تطبيق يمكن الوصول إليه عبر بروتوكول HTTP.
  • RESTful API هو نوع واحد من الويب API وليس النوع الوحيد.
  • الدرس القادم سيكون حول فوائد الويب API وكيف يؤثر على تصميم التطبيقات.

الملخص

  • الويب API تسهل التكامل بين التطبيقات باستخدام بروتوكول HTTP وتنسيقات JSON و XML لفهم البيانات ونقلها.
  • يمكن تحويل أي وظيفة لتكون متاحة عبر الويب باستخدام Web API.