اذهب إلى المحتوى
  • 0

ما هو الفرق بين API و Web service؟

Mr.PHP

السؤال

Recommended Posts

  • 2

وعليكم السلام

كلمة API  عامة وهي تعني: دوال يقوم ببرمجتها المبرمج ليستفيد من البرنامج أو النظام مبرمجون أو مستخدمون آخرون.

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

الآن WebServices هي طريقة أو بروتوكول لاخراج هذه الدوال إلى المبرمجين الخارجيين، مع العلم أنه يمكن اخراج الدوال بدون WebServices

مثلا في نظام تشغيل ويندوز، ويفر لك الويندوز دوال عامة يمكنك استدعاءها، مثلا دالة إفراغ سلة المحذوفات، يمكنك استدعاءها من كود برنامجك هذه الدالة يتم استدعاءها ليس عن طريق WebServices .

الدالة مقصود بها دالة برمجية Function أو إجراء subroutine ، وقد ترسل لها وسيطة Parameter إما تكون متغير نصي أو عبارة عن Class أو واجهة ... إلخ.

 

الويب سيرفس ، طريقة لنقل الدوال والاجراءات بين أجهزة مختلفة، وغالبا يكون عبر استخدام HTTP ، وله عدة صيغ وطرق للنقل أشهرها رسالة SOAP وبروتوكول WSDL وهنالك JSON و XML ... إلخ

 

بمعنى أنت تقوم بعمل API ( دوال ) وتقوم بتصديرها للغيرك ( مبرمج خارجي ) على هيئة مبادئ وبروتوكولات WebServices ، لكي يستخدمها من مكان بعيد.

هذا يقودنا للتالي:

1- كل Web services هي APIs والعكس غير صحيح.

2- قد تكون عندك APIs في دوال كثيرة، ولكنك تسمح فقط باخراج بعضها في WebServices ، وبعضها في WebServices  أخرى، وبعضها تجعله محلي، وبعضها تربطه مع دوال أخرى خارجية.

3- Web Services  تحتاج إلى اتصال انترنت للعمل عليها، ولكن الدوال التقليدية API لا يلزمها غالبا اتصال ، مثلا دوال الويندوز كحذف ملف.

مصدر مميز

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...