Windows Communication Foundation
Windows Communication Foundation farklı makineler üzerindeki uygulamaların birbiriyle iletişim kurmasını sağlayan bir iç sistemdir. .NET Framework 3.0 uygulama geliştirme platformunun bir bileşeni olarak sunulmuştur. WCF olarak kısaltılan bu teknoloji, ilk olarak Indigo kod adıyla dünyaya duyurulmuştur. WCF; Remoting, Web Servisleri, Dağıtık "Transaction"lar gibi dağıtık programlama yollarını tek bir yapıda birleştirmektedir.
Yapısı
WCF Servis odaklı mimari (Service Oriented Architecture) kapsamında dağıtık sistemler tasarlamak ve geliştirmek içindir. İstemciler birden fazla servis hizmetinden faydalanabilirler ve servisler birden fazla istemciler tarafından tüketilebilir. Düzgün arabirimlerle birleşen servisler yaratabilir ve bu servislerin birbirlerini minimum düzeyde etkileyecek şekilde sistemler tasarlanarak birimsellik özelliğinden faydalanılabilir. Servisler WSDL (Web Services Description Language) arayüzünü kullanarak diğer servislerle mesajlaşırlar ve bu özellik servislerin başka platformlarda yaratılmış servislerle sorunsuz mesajlaşabilmesi sağlar. WCF WS-Addressing, WS-ReliableMessaging ve WS-Security standartlari gibi birçok gelişmiş Web hizmetlerini uygular. .NET Framework 4.0 sürümü ile WCF da RSS Hizmetleri sağlar.
Endpoints
Bir WCF istemci bir uç nokta (Endpoint) ile istenilen WCF servisine bağlanır. Her servis bir veya daha fazla uç noktaları üzerinden sözleşmesini yayına çıkarır. Her uç nokta bu noktaya hangi URL'den bağlanlıcağını bildiren bir adrese ve verinin nasıl transfer edileceğini belirleyen bağlayıcı özelliğine (binding properties) sahiptir. Uç noktaların ABC'si olarak bilinen Adres, Bağlayıcı, Kontrat (Address, Binding, Contract) anımsatıcı olarak kullanılır. Servise erişmek için ne tür iletişim protokolü kullanılacağı ve güvenlik mekanizmaları dahil edilip edilmeyeceği bağlayıcı özelliklerinden (binding properties) ayarlanır.
Behaviors
Davranışlar (Behavior) servislerin ya da istemcilerin işlevselliğini (fonksiyonlarını, metodlarını) modifiye eder ya da genişletir.
WCF yaygın olarak kullanılan iletişim protokolleri (TCP üzerinden SOAP, HTTP üzerinden SOAP ve Message Queue üzerinden SOAP) için daha önceden tanımlanmış bağlayıcı özellikleri içermektedir. WCF uç noktaları ve istemciler arasındaki etkileşim SOAP zarfı kullanılarak yapılır. Basit XML halinde olan SOAP zarfları WCF platformunu bağımsız kılar. Bir istemci bir uç noktası üzerinden servise erişmek istediğinde, sadece sözleşmeyi bilmesi ve aynı zamanda uç nokta ile uyumlu bağlayıcıyı kullanması gereklidir.
Davranışların kullanıldığı bazı örnekler şunlardır:
- Üstverinin (metadata) bir servisle yayında olup olmadığını kontrol edilmesi
- Güvenlik özellikleri ekleme, örneğin impersonation, authorization, ya da managing tokens
- Mesajlar hakkında bilgileri kayıt etmek
- Mesaj veya parametre doğrulama
Dış bağlantılar
Windows Communication Foundation - Microsoft bünyesindeki resmî sayfa (İngilizce)