“Adım Adım WCF” makaleler dizimizde Microsoft un yeni servis yönelimli mimarisi wcf i sıfırdan incelemeye başlayıp, adım adım uzman yaklaşımlara doğru ilerleyeceğiz. Öncelikle “neyi inceliyoruz”, “neden wcf” sorularına ışık tutarak başlayalım.
WCF Nedir?
Microsoft un şimdiye kadarki dağıtık mimari uygulamalarını incelediğimizde karşımız şöyle kabarık bir liste çıkıyor:
- ASP.NET Web Services (ASMX)
- Web Services Enhancements (WSE)
- Messaging (MSMQ)
- .NET Enterprise Services (ES)
- .NET Remoting
tüm bu uygulamar ayrı ayrı, bir bütünlük olmaksızın host edilip, herbiri için farklı işlemler, farklı yaklaşımlar gerekiyordu. WCF tüm bu yapıların biraraya getirilmesini ve optimum çözüm sunarak ,standartları olan, güvevli SOA uygulamalarına imkan kılıyor.
WCF temelinde servis üç adımda geliştirilir.
1. Servis yaratılır.(Creating)
2. Servise bir adres bağlanır ve host edilir. (Hosting)
3. Client tarafından eklenerek kullanılır.(Consuming)
2. Servise bir adres bağlanır ve host edilir. (Hosting)
3. Client tarafından eklenerek kullanılır.(Consuming)
Yukarıdaki üç adımı uygulayarak örnek bir servis geliştirmeye ileriki makalelerde başlayacağız fakat öncesinde WCF i incelemeye devam edelim.
WCF ve ABC??
.Bir servis en az bir tane endpoint e sahiptir. Endpointler servisin iletişimini sağlayan ve iletişim kurallarını belirleyen yapılardır. Client tarafında bir tane, sunucu tarafında ise n tane olabilir. Bunun anlamı n tane farklı iletişim yolu. Endpointlerin niteliklerini belirleyende işte başlıkta belirttiğimiz ABC. Peki ama nedir bu ABC ne işe yarar?
Address
Her web uygulamasının bir adresi olduğu gibi WCF servisimizinde bir adresi olmalı. WCF aşağıdaki protokolleri kullanarak servis çalıştırmaya imkan verir.:
Her web uygulamasının bir adresi olduğu gibi WCF servisimizinde bir adresi olmalı. WCF aşağıdaki protokolleri kullanarak servis çalıştırmaya imkan verir.:
- HTTP (http:// yada https:// )
- TCP (net.tcp :// )
- Peer 2 Peer (net.p2p://)
- IPC (Inter-Process Communication over named pipes)(net.pipe://)
- MSMQ (net.msmq://)
Bindings
Binding servisin erişebilirliği ile ilgilenir. Servise dış dünyanın hangi kurallar ile bağlanabileceğini belirler.
Bir binding tipi:
1.Protocol : İstenilen herhangi protokol
2.Encoder : text/xml için HTTP binding, binary xml için TCP binding olabilir
3.Transport: HTTP, TCP, NamedPipes ya da MSMQ.
ile kurallar belirler.
Contract
Contract, client ın servis ile yapabileceği işlemleri ifade eder.
WCF dünyasına WCF in genel yapısını ve temel kurallarını inceleyerek başladık. Bir sonraki makalemizde, Contract konusunu biraz daha detaylandırıp, bir contract örneği ile wcf kodlamaya da başlamış olacağız. Bir sonraki makalede görüşmek üzere.
Hiç yorum yok:
Yorum Gönder