سرویس های وب یک راه حل عملیاتی و ممکن ارائه می کنند. با استفاده از سرویس های وب شما می توانید سیستم های توزیع شده ای از عناصر منتشر شده بر روی اینترنت بسازید. بانک های اطلاعاتی، سرویس های تجاری و غیره.
مولفه ها و سرویس ها توسط یک سرویس دهنده وب میزبانی می شوند، این سرویس دهنده درخواست های برنامه به سرویس گیرنده را دریافت می کند، آن ها تجزیه و تحلیل می کنند و فرمان مناسبی به مولفه و یا سرویس ارسال می کند . پاسخ از طریق سرویس دهنده و به برنامه سرویس گیرنده ارسال می شود.


هدف از این سری آموزش ها این است تا نشان دهیم یک وب سرویس چگونه طراحی، ساخت و تست می شود. سرویس هایی که در اینترنتی قابل دسترس بوده و می توانند در برنامه های توزیع شده یکپارچه شوند. همچنین سعی می کنیم آموزش دهیم که چگونه برنامه سرویس گیرنده ای بسازیم که از متدهای سرویس وب استفاده می کند


وب سرویس چیست؟
هر سرویس وب یک مولفه تجاری است که یکسری قابلیت های مفید و قابل استفاده مجدد برای سرویس گیرنده ها و یا مشتریان ارائه می کند. یک سرویس وب می تواند به صورت مولفه ای با قابلیت دسترسی جهانی در نظر گرفته شود. در صورتیکه قوانین دسترسی داشته باشید، می توانید از هر جای دنیا از سرویس وب استفاده نمایید. البته به شرطی که کامپیوتر شما به اینترنت وصل باشد! :دی


وب سرویس ها از پروتکل استاندارد، پذیرفته شده و شناخته شده ای ( Hypertext Transfer Protocol = HTTP ) برای ارسال داده ها و فرمت بندی داده ها بر مبنای XML استفاده می کند. HTTP و XML هر دو تکنولوژی های استانداردی هستند که می توانند توسط دیگر محیط های برنامه نویسی خارج از چارچوب .Net مایکروسافت مورد استفاده قرار گیرند. فقط کافیست روی سیستم خود ویژوال استودیو نصب کنید. نکته ی مهم در این میان زبان برنامه نویسی است؛ یعنی زبان بکار رفته در ساخت وب سرویس و حتی چگونگی اجرای اعمال توسط وب سرویس مهم نیست. برنامه های سرویس گیرنده ای که بر روی محیط های مختلف مثل جاوا اجرا می شوند می توانند از آن ها استفاده کنند. عکس این مسئله نیز صحیح است. شما می توانید با استفاده از جاوا وب سرویس بسازید و برنامه های سرویس گیرنده را در C# بسازید.


نقش WPF
WPF به صورت بخشی از نسخه چارچوب دات نت نسخه 3 ادغام شده است. هدف از WPF ارائه یک مدل برنامه نویسی یکپارچه برای این تکنولوژی می باشد. بنابراین شما می توانید برنامه هایی بسازید که تا حد امکان مستقل از مکانیزم بکار رفته در اتصال سرویس ها برنامه ها می باشند، بسیار مشکل است که ساختار برنامه ای را به طور کامل از زیرساخت های اتصالی اش جدا کنید، اما WPF به شما اجازه می دهد تا به راحتی به این منظور دست پیدا کنید.


به طور خلاصه اگر در نظر دارید سرویس ها و برنامه های توزیع شده ای برای ویندوز بسازید، بایستی از WPF استفاده کنید.


معماری وب سرویس
دو معماری متداول وجود دارد که سازمان ها با استفاده از آن ها، سرویس های وب را پیاده سازی می کنند. یا سرویس هایی بر مبنای پروتکل دسترسی آسان به شیء ( SOAP ) یا سرویس هایی بر مبنای مدل انتقال وضعیت رابطه ای (Rest). هر دوی این معماری ها، پایه پروتکل HTTP و در نظر گرفتن شماتیک مورد استفاده توسط اینترنت می باشند، اما آن ها با روشی متفاوت از آن استفاده می کنند. در صورتی که راه حل های شما با سرویس های وب میزبانی شده توسط سازمان های خارجی همکاری دارد، ممکن است این سرویس های وب را با استفاده از این مدل پیاده سازی کنند، بنابراین به شما کمک می کند تا درک خوبی از آن داشته باشید. در بخش های بعدی به معرفی این معماری ها می پردازیم.

منبع : https://www.vaniait.com/Article/Learning-to-Build-and-Use-a-Web-Service--Part-One-73