WCF პროგრამირება: შექმენით სერვისზე დაფუძნებული Windows პროგრამები

გამჟღავნება: თქვენი მხარდაჭერა ხელს უწყობს საიტის მუშაობას! ჩვენ ვიღებთ რეფერალის გადასახადს ზოგიერთი სერვისის შესახებ, რომელსაც გირჩევთ ამ გვერდზე.


Windows საკომუნიკაციო ფონდი (WCF) არის გაშვებული გარემო და API– ების ერთობლიობა. NET Framework– ში, რომელიც გამოიყენება სერვისზე ორიენტირებულ, დაკავშირებულ აპლიკაციების შესაქმნელად. WCF არის Microsoft– ის პროგრამირების ერთიანი მოდელი, რომელიც ორიენტირებულია სერვისზე ორიენტირებულ პროგრამებზე.

Მოკლე ისტორია

გასული ათწლეულის განმავლობაში მომსახურებაზე ორიენტირებული კომუნიკაციისა და პროგრამების გაზრდილი პოპულარობა ღრმა გავლენამ მოახდინა პროგრამული უზრუნველყოფის დამუშავებაზე. პროგრამები, რომლებიც სხვადასხვა სერვისებს ეყრდნობიან ინტერაქციისთვის, ნორმად იქცა. Microsoft- ის Windows- ის განვითარების პლატფორმაზე, ამ ცვლილებებმა შესაძლებელი გახადა Windows კომუნიკაციის პლატფორმა (WCF).

WCF პირველად დაინერგა 2006 წელს .NET Framework 3.0, ნაწილი და შემდეგ განახლდა .NET Framework ვერსიებში 3.5 და 4.0. WCF- ის უახლესი ვერსია ხელმისაწვდომია .NET Framework ვერსიის 4.5 ნაწილი.

Windows კომუნიკაციის ფონდი გამოიყენება უმეტეს NET Framework საფუძველზე.

WCF მახასიათებლები

WCF არის პროგრამა დეველოპერებისთვის, რომლებიც ქმნიან სერვისზე ორიენტირებულ პროგრამებს, ეყრდნობიან ვებ სერვისებს მონაცემების გაგზავნისა და მიღების მიზნით. ვებ-სერვისებს აქვთ ზოგადი უპირატესობა, რომ იყვნენ უხერხულად დაწყვილებული, იმის ნაცვლად, რომ იყოს სპეციალურად კოდირებული თითოეული აპლიკაციისთვის. სხვა სიტყვებით რომ ვთქვათ, ნებისმიერ პლატფორმაზე შექმნილ ნებისმიერ აპლიკაციას შეუძლია დაუკავშირდეს ნებისმიერ სერვისს.

WCF ახორციელებს თანამედროვე ინდუსტრიის სტანდარტებს ვებ სერვისების ურთიერთთანამშრომლობისთვის, მაგალითად, HTTP, SOAP, XML, WS- მისამართით, W3C ვებ – სერვისების მისამართით და მრავალი სხვა. შეტყობინებები (ან უნდა ვთქვათ, რომ მონაცემები) შეიძლება გაცვალონ რამდენიმე სხვადასხვა შაბლონით.

ყველაზე გავრცელებული საკომუნიკაციო ნიმუშია მოთხოვნა-პასუხი, მაგრამ WCF მხარს უჭერს სხვა შაბლონებსაც, მაგალითად, ცალმხრივი შეტყობინებების ან დუპლექსის გაცვლის ნიმუში. შეტყობინებების დაშიფვრა შესაძლებელია მონაცემთა დაცვისთვის, ხოლო მომხმარებლის ავთენტიფიკაცია შეიძლება განხორციელდეს. უსაფრთხოება ხორციელდება ინდუსტრიის სტანდარტული გადაწყვეტილებების გამოყენებით, როგორიცაა SSL ან WS-SecureConversation. შეტყობინებების ტრანსპორტირება შესაძლებელია სხვადასხვა პროტოკოლისა და კოდირების საშუალებით, ყველაზე ხშირად, როგორც ტექსტური დაშიფრული SOAP შეტყობინებები HTTP- ზე. WCF ასევე მხარს უჭერს შეტყობინებების გაგზავნას TCP, MSMQ ან დასახელებული მილების საშუალებით, კოდირებული ტექსტით ან ოპტიმიზებული ორობითი ნაწილის გამოყენებით, MTOM სტანდარტის გამოყენებით. ასევე შესაძლებელია შეიქმნას საბაჟო სატრანსპორტო ოქმები და კოდირება.

WCF მხარს უჭერს სანდო შეტყობინებების გაცვლას WS-ReliableMessaging და რიგგარეშე შეტყობინებების გამოყენებით განხორციელებული სესიების გამოყენებით, MSMQ გამოყენებით. გამძლე შეტყობინებების მხარდაჭერა ასევე შედის WCF- ში, რაც ხელს უშლის კომუნიკაციის პრობლემებით გამოწვეულ მონაცემთა დაკარგვას.

გარიგების ფართო მხარდაჭერა ხელმისაწვდომია WCF– ში, გარიგების სამიდან ერთი მოდელის გამოყენებით: WS-AtomicTransactions, API– დან System.Transaction სახელების ადგილიდან, ან Microsoft– ის განაწილებული გარიგების კოორდინატორი..

WCF არის ძალიან მოქნილი პლატფორმა, რომლის საშუალებითაც შესაძლებელია მარტივი გაფართოება და ინტეგრაცია სხვა Microsoft ტექნოლოგიებთან, მაგალითად, Windows Workflow Foundation (WF), Microsoft BizTalk და Silverlight.

WCF- ის გამოყენებით

სინამდვილეში, WCF არის ზოგადი საკომუნიკაციო მექანიზმი, რომელიც გამოიყენება ორ მხარეს შორის კლიენტ-მასპინძელი კომუნიკაციის დასამყარებლად. სწორედ ეს გახდება სასარგებლო, რადგან თქვენ შეგიძლიათ კონფიგურაცია გაუკეთოთ მომსახურების პარამეტრებს, როგორიცაა სატრანსპორტო პროტოკოლი, დაცვა, კოდირება და ა.შ. – კლიენტის განაცხადის კოდექსში ცვლილების გარეშე. ასევე შეგიძლიათ სხვადასხვა კომერციული პროგრამების ენებზე დაწერილი სერვისებსა და კლიენტებს შორის კომუნიკაციის დაყენება.

WCF სერვისისა და კლიენტისთვის Visual Studio IDE- ში შესაქმნელად საჭიროა ექვსი ნაბიჯი:

  1. WCF მომსახურების ხელშეკრულების განსაზღვრა განსაზღვრავს სამსახურის მიერ მხარდაჭერილი ოპერაციებს. კონტრაქტები იქმნება C ++, C #, ან Visual Basic ინტერფეისის განსაზღვრით, ხოლო ინტერფეისის თითოეული მეთოდი უნდა შეესაბამებოდეს კონკრეტულ სერვისულ ოპერაციას. თითოეულ ინტერფეისს უნდა ჰქონდეს მასზე გამოყენებული ServiceContractAttribute და თითოეული ოპერაცია უნდა იყოს გამოყენებული OperationContractAttribute, წინააღმდეგ შემთხვევაში ისინი არ ექვემდებარება.
  2. მომსახურების ხელშეკრულების განხორციელება ხდება კლასის შექმნის გზით, რომელიც ახორციელებს მომხმარებლისთვის განსაზღვრულ ინტერფეისს მომსახურებისთვის.
  3. WCF სერვისის მასპინძლობა და გაშვება შედგება შემდეგი ამოცანებისაგან: სამსახურის მონაცემთა ბაზის მისამართისთვის URI მაგალითის შექმნა, სერვისის მასპინძლობა, სერვისის ექსპოზიციის ბოლო წერტილის დამატება, მეტამონაცემების გაცვლის გააქტიურება და მომსახურების მასპინძლის გახსნა..
  4. კლიენტის შექმნა მოიცავს სერვისისათვის მარიონეტული პერსონალის გენერირებას და კონფიგურაციის ფაილის ბრძანების სერვისის მოდელის მეტამონაცემების კომუნალური ინსტრუმენტის გამოყენებით..
  5. კლიენტის კონფიგურაცია მოიცავს იმ საბოლოო წერტილის დაზუსტება, რომელსაც კლიენტი იყენებს სერვისზე შესასვლელად. ბოლო წერტილს აქვს მისამართი, სავალდებულო და კონტრაქტი, ხოლო თითოეული მათგანი უნდა იყოს მითითებული კლიენტის კონფიგურაციის პროცესში..
  6. კლიენტის გამოყენება რეალურად უწოდებს სერვისს გენერირებული მარიონეტისაგან და ხურავს კლიენტს ოპერაციის ზარის დასრულებისთანავე.

WCF მომსახურების ბიბლიოთეკის შაბლონის, ან WCF სერვისის განაცხადის შაბლონის გამოყენებით ვიზუალურ სტუდიაში შეიძლება მნიშვნელოვნად გაამარტივოთ ზემოთ ჩამოთვლილი ნაბიჯები, რადგან აღწერილი დავალებების უმეტესობა ავტომატურად შესრულდება.

უნდა ვისწავლო და გამოვიყენო WCF?

უმეტეს შემთხვევაში, საქმე ეხება კონკრეტულ დავალებას: როგორ შეიძლება მისი მოგვარება, და რომელია ყველაზე ეფექტური და მომავალი მტკიცებულება? შესაძლოა, მარტივი მაგალითია საუკეთესო პასუხი ამ კითხვაზე.

თქვენ შეიმუშავებთ გაყიდვების პროგრამული უზრუნველყოფის კომპლექტს კლიენტისთვის, სადაც ბევრი დაარბევს გაყიდვების ადგილს და თქვენ უნდა დაუკავშირდეთ კლიენტის არსებულ ძირითადი ბიზნესის SQL მონაცემთა ბაზას. არსებობს ორი სავარაუდო გამოსავალი. პირველი არის WAN– ის დაყენება და კლიენტის ყველა გაყიდვის ადგილის დაკავშირება ძირითად მონაცემთა ბაზაში, მარშრუტიზატორის ან VPN კავშირების გამოყენებით..

მეორე გამოსავალი არის WCF კლიენტ-სერვერის გადაწყვეტის უბრალოდ დანერგვა და მონაცემთა ბაზაში ინტერნეტით წვდომა. ბევრ სცენარში, WCF- ის გამოყენება შეიძლება ძალიან სასარგებლო და ეკონომიური იყოს.

WCF რესურსები

თუ Microsoft- ის პლატფორზე კლიენტ-სერვერის პროგრამების შემუშავებაზე მუშაობთ, თქვენ უნდა გადახედოთ შემდეგ რესურსებს WCF:

  • Microsoft Developer Network (MSDN) Windows საკომუნიკაციო ფონდის ძირითადი გვერდი გთავაზობთ სრულ მიმოხილვას WCF – დოკუმენტაციის, საცნობარო რესურსების, სახელმძღვანელოების და გაკვეთილების ჩათვლით..
  • Microsoft Developer Network (MSDN) WCF ვიზუალური სტუდიის განყოფილებაში აღწერს WCF ინსტრუმენტებს, რომლებიც ხელმისაწვდომია Visual Studio- ში და უზრუნველყოფს მოკლე დროში.
  • Microsoft Developer Network (MSDN) WCF განაცხადის განლაგების სცენარი ლამაზი სტატიაა, რომელიც ასახავს WCF– ის სხვადასხვა სცენარებსა და გამოყენების შემთხვევებს..

WCF წიგნები

შევარჩიეთ WCF- ს შესახებ ყველაზე მეტად პატივცემული წიგნები:

  • პროგრამირების WCF სერვისები: Juval Lowy and Michael Montgomery– ის მიერ შემუშავებული შენარჩუნების სერვისზე ორიენტირებული სისტემების შექმნა (2015) დაპროექტება და აშენება: ეს წიგნი გთავაზობთ უნიკალურ გააზრებას, ვიდრე დოკუმენტაციას, რომელიც დაგეხმარებათ გაიგოთ ის თემები და უნარები, რომლებიც გჭირდებათ შენობის შენარჩუნების, გაფართოების და გამოსაყენებლად. WCF დაფუძნებული პროგრამები.
  • WCF მრავალ ფენის სერვისების განვითარება სუბიექტის ჩარჩოებით (2014) მაიკ ლიუ: თუ თქვენ ხართ C #, VB.NET ან C ++ პროგრამისტი და გსურთ დაიწყოთ WCF და Entity Framework, მაშინ ეს წიგნი თქვენთვისაა. ეს წიგნი გასწავლით WCF სერვისების შემუშავებას ყველა აუცილებელ ნივთზე, როგორც ფონდის ფონდი.

დასკვნა

იმის გამო, რომ WCF არის Microsoft- ის პროდუქტი, ემყარება სერვისზე ორიენტირებულ პროგრამულ გადაწყვეტილებების შესაქმნელად. NET ჩარჩოს, მას აქვს ძალა. ეს არ არის ახალი, მაგრამ ის მაინც აქტუალურია და, ალბათ, იქნება წლების განმავლობაში.

ჩვენ უკვე ავღნიშნეთ რამდენიმე შემთხვევა, რომლის დროსაც WCF– ს შეუძლია დიდი განსხვავება შეიტანოს ტექნიკური თვალსაზრისით. მიუხედავად იმისა, რომ ეს არის Microsoft ტექნოლოგია, WCF მხარს უჭერს ფუნქციონირებას უმეტესობა არა Windows სისტემის უმეტესობასთან, სანამ ისინი Java მუშაობენ.

შემდგომი კითხვა და რესურსები

გვაქვს უფრო მეტი სახელმძღვანელო, გაკვეთილი და ინფოგრაფიკა, რომლებიც დაკავშირებულია კოდირებასა და განვითარებას:

  • Microsoft Visual Basic / Visual Studio: ეს არის ჩვენი ძირითადი პრინციპი Visual Studio– ზე, აქცენტი გაკეთდეს Visual Basic– ზე.
  • შესავალი ADO.NET: ძირითადი. NET სისტემა მონაცემთა ბაზებთან ურთიერთობისთვის.
  • C # რესურსები: როგორც. NET ფუნდამენტური ერთ – ერთი ყველაზე პოპულარული ენა, C # ძალიან სასარგებლოა ამის ცოდნა.

რა კოდი უნდა ვისწავლო?

დაბნეული, რა პროგრამირების ენაზე უნდა ისწავლო კოდირება? გადახედეთ ჩვენს ინფოგრაფიკას, რა კოდი უნდა ვისწავლოთ? იგი არა მხოლოდ ენების სხვადასხვა ასპექტს განიხილავს, არამედ ის პასუხობს მნიშვნელოვან შეკითხვებს, როგორიცაა: “რა თანხას გამოვიყენებ პროგრამირების ჯავა საცხოვრებლად?”

რა კოდი უნდა ვისწავლო?
რა კოდი უნდა ვისწავლო?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map