الـ web services هي مجموعة من الخدمات مقدمة من قبل شركة او مؤسسة (service provider) ويمكن لإي تطبيق سواءً كان (web application ,desktop application , web service)
الإستفاده منها و في هذه الحالة يسمى consumer اذاً الــ web service هي عملية تخاطب تطبيق مع تطبيق آخر والأمثلة على الــ web services المتاحه على الانترنت كثيره منها ماهو مجاني وآخرى تكون برسوم ومن الأمثلة على خدمات الويب المجانية GlobalWeather لمعرفة احوال الطقس و GeoIPservice لتحديد مكان الــ IP و وقد اضفتها كا خدمة في موقعي واذا اردت البحث عن المزيد من الــ web services يمكنك الاستعانة بي الــ search engines مثل
http://webservices.seekda.com/
متى نستخدم الــ web services ؟
تخيل معي عزيزي القارئ لنفترض انك تعمل في احدى الشركات الكبرى وتلك الشركه لديها العديد من الأنظمة القديمة والحديثه وقد طورت على منصات تشغيل مختلفه وبلغات برمجة مختلفة واردت عمل تكامل (integration) بين تلك الأنظمة في هذا السيناريو سوف تحتاج لإستخدام الــ web service لقدرتها على ربط تلك الأنظمة وذلك لكونها تعتمد (open standards plumbing) معايير متعارف عليها من قبل اغلب الــ vendors
http,soap,xml,wsdl
متى لاينصح بإستخدام الــ web services ؟
الهدف من استخدام الــ web services هي (reusability) و الترابط والتكامل (integration) تخيل لو ان شركةً ما جميع الأنظمة لديها مطوره بي الدوت نت وتريد عمل integration بينها لا ينصح بإستخدام الــ web services لربط بينها وذلك بسبب الــ overhead الناتج عن عملية الــ serialization وهي تحويل مناداة الـــ methods والــ input parameters الى soap message على حسب الوصف والــ structure الموجود في ملف الــ wsdl وعملية الــ serialization يقوم بها الــ proxy class وهو كلاس يتم انشائها عن طريق tools تحدد لها ملف الــ wsdl والمخرج يكون الــ proxy class وهو يلعب دور الوسيط بين الــ service provider و الــ consumer
طبعااً soap بروتوكول وهو اختصار لي simple object access protocol والــ wsdl اختصار لي web service description language وتوجد عملية اخرى تسمى بي الــ deserialization وهي عملية تحويل النتيجة الراجعه من الــ web service والتي هي على هيئة soap message الى دوت نت object كما تلاحظ يوجد overhead بسبب عمليتي التحويل مع وجود حل افضل (optimum solution) وهو استخدام تقنية الــ remoting التي تمكنك من عمل shared component و عمل الربط من خلالها بين جميع الأنظمة المطورة بتقنيات الدوت نت (وفي حالة كون جميع الأنظمة مطورة بالجافا يمكنك استخدام تقنية الــ RMI المشابهه لتقنية الــ remoting في الدوت نت)
مقطع جميل على اليوتيوب يتم فيه شرح اساسيات الــ web services
(ملاحظة مقطع اليوتيوب embedded في صفحة الموضوع على موقعي)
http://www.alhaqbani.net/60.aspx
مع فائق الود والإحترام للجميع
