WCF کے ساتھ آرام دہ خدمات کا تعارف - موبائل ایپلیکیشن ڈویلپمنٹ، ویب سروسز، SOA آرکیٹیکچر - ٹیکنالوجی
مواد پر جائیں۔

WCF کے ساتھ آرام دہ خدمات کا تعارف - موبائل ایپلیکیشن ڈویلپمنٹ، ویب سروسز، SOA آرکیٹیکچر

اشتہارات

سب سے پہلے، RESTFUL سروسز ایک آرکیٹیکچرل طرز کی پیروی کرتی ہیں جسے Representational State Transfer (REST) کہا جاتا ہے۔ آرکیٹیکچرل سٹائل رکاوٹوں کا ایک مجموعہ ہے جو کسی چیز کو بناتے وقت لاگو کیا جا سکتا ہے۔ اور سافٹ ویئر آرکیٹیکچر اسٹائل ایک ایسی چیز ہے جو ان خصوصیات کو بیان کرتی ہے جو سافٹ ویئر سسٹم کے نفاذ میں رہنمائی کے لیے استعمال کی جا سکتی ہیں۔ REST ایک آرکیٹیکچرل سٹائل ہے جسے سافٹ ویئر بنانے کے لیے استعمال کیا جا سکتا ہے جس میں کلائنٹ (صارف ایجنٹ) خدمات (اینڈ پوائنٹس) کے لیے درخواستیں کر سکتے ہیں۔ REST ایک کلائنٹ/سرور کی تعمیراتی طرز کو نافذ کرنے کا ایک طریقہ ہے۔ درحقیقت، REST واضح طور پر کلائنٹ/سرور کی تعمیراتی طرز پر مبنی ہے۔

رائے تھامس فیلڈنگ نامی ایک شخص نے سب سے پہلے اپنے ڈاکٹریٹ کے مقالے ("آرکیٹیکچر اسٹائلز اینڈ دی ڈیزائن آف نیٹ ورک بیسڈ سافٹ ویئر آرکیٹیکچرز") میں ایک تصور کے طور پر REST کی اصطلاح بنائی۔ وہ ان لوگوں میں سے ایک تھا جنہوں نے اس تصریح پر کام کیا جو آج زیادہ تر انٹرنیٹ کو چلاتا ہے: ہائپر ٹیکسٹ ٹرانسفر پروٹوکول (HTTP)۔ عام طور پر تعمیراتی انداز بیان کرنے والے لوگوں کا پس منظر اس انداز کی وضاحت سے متعلق نہیں ہوتا ہے، لیکن یہاں میں یہ سوچتا ہوں۔ اہم ہے کیونکہ مجھے یقین ہے کہ REST کی بنیادی سمجھ حاصل کرنے کا ایک بہترین طریقہ ویب کے بارے میں سوچنا ہے اور یہ کیسے کام کرتا ہے۔

WCF اور REST

ڈبلیو سی ایف مائیکروسافٹ کا فریم ورک ہے جو ایپلی کیشنز بنانے کے لیے ہے جو پروٹوکول یا انداز سے قطع نظر نیٹ ورک پر بات چیت کرتی ہے۔ WCF کا تصور ایک پروگرامنگ اور کنفیگریشن ماڈل کے بارے میں معلومات سیکھنے کے لیے ایک قابل توسیع، پلگ ایبل فریم ورک بنانا تھا، تاکہ ڈویلپر اس علم کو مختلف قسم کے تقسیم شدہ نظاموں پر لاگو کر سکیں۔

اگرچہ یہ سچ ہے کہ WCF کا زیادہ تر حصہ RPC پر مبنی ہے (SOAP کا استعمال کرتے ہوئے)، اسے درحقیقت REST سروسز کو بے نقاب کرنے اور استعمال کرنے کا موقع ملا ہے جب سے اسے پہلی بار .NET Framework 3.0 کے حصے کے طور پر جاری کیا گیا تھا۔ .NET Framework 3.5 System.ServiceModel.Web اسمبلی کے ساتھ، ایک پروگرامنگ ماڈل شامل کیا گیا اور انفراسٹرکچر کے کچھ ٹکڑے بھی جو REST طرز کے ساتھ کام کرنے کے لیے بنائے گئے تھے۔ اور .NET Framework 3.5 SP1 REST کو استعمال میں آسان بنانے کے لیے کچھ چھوٹی بہتری شامل کرتا ہے۔.

پروگرامنگ ماڈل دو نئی صفات، WebGetAttribute اور WebInvokeAttribute، اور ایک URI ٹیمپلیٹ میکانزم کے گرد گھومتا ہے جو آپ کو URI اور فعل کا اعلان کرنے کی اجازت دیتا ہے جس کا ہر طریقہ جواب دے گا۔ انفراسٹرکچر بائنڈنگ (WebHttpBinding) اور رویے (WebHttpBehavior) کی شکل میں شامل ہے جو REST استعمال کرنے کے لیے درست نیٹ ورک اسٹیک فراہم کرتا ہے۔ مزید برآں، حسب ضرورت سروس ہوسٹ (ویب سروس ہوسٹ) اور سروس ہوسٹ فیکٹری (ویب سروس ہوسٹ فیکٹری) سے کچھ ہوسٹنگ انفراسٹرکچر مدد موجود ہے۔