14 Temmuz 2011 Perşembe

XML WEB SERVİSLERİ


Web ortamındaki gelişmeleri üç safhada inceleyebiliriz:

  1. Belge Web’i (Document Web) : Web’in en ilkel halidir. Bu web türünde bilgi sadece okunabiliyordu,bilgi üzerinde değişiklik yapmak mümkün değildi.yani HTTP protokolü ile HTML dilinde biçimlendirilmiş statik belgelerin kullanıcılara sunuluyordu.
  2. Uygulama Web’i (Application Web) :dinamik HTML belgeleri ile kullanıcı ve iş uygulaması arasında etkileşim sağlandı.Bilgi üzerinde okuma ve bilgi yazma imkanı verdi.
  3. Servis Web’i (Services Web) : İşletmelerin diğer işletmelerle olan iş süreçlerini bütünleştirme gereksinimi sonucunda ortaya  çıkan ve gelişmekte olan yeni yapıdır.  Bu yapının temel taşı web servisleridir.
Web servisleri Nedir?

W3C  (World Wide Web Consortium)  tarafından yapılan resmi tanımıyla web servisi, bilgisayarlar arasında ağ üzerinden etkileşimi ve uyumluluğu sağlayacak yazılım sistemidir.Web servisleri programların etkileşimi sağlamaktadır.Web servisleri sayesinde farklı veri tabanındaki bilgiler çekilebilir.
Web servisler içinde metodlar barındırır ve client bir istekte bulunduğunda bu metodlar ile client isteğine yanıt vermiş olur.




Web servislerinin en büyük avantajı:Web servislerinin en büyük avantajı  Xml  (extensible Markup Language-genişletilebilir etiketleme dili) tabanlı olmasıdır.Xml, kişilerin kendi etiketlerini tanımlayarak bu etiketler ile hiyerarşik yapı kurabildikleri ,bunları istedikleri zaman değiştirebildikleri ; esnek, teknolojiden -platformdan bağımsız text tabanlı bir meta dilidir.Xml tabanlı olması beraberinde platform bağımsız olmayı da getirir.
Platformdan bağımsız derken ne kastettiğimi biraz daha açmak istiyorum:Günümüz teknolojisi o kadar zenginleşti ve çeşitlendi ki…..Farklı farklı işletim sistemleri,programlar… Bunlar bir yana bir programın bile birden çok farklı versiyonu var. Bu kadar çeşitliliğin olması şüphesiz yanında uyum problemlerini getirecektir.Bir dosyayı aynı programın farklı versiyonlarında çalıştırmak istediğimizde bile zaman zaman problem yaşamaktayız,kaldı ki farklı program ve işletim sistemlerinde yaşanmasın.Bütün teknolojilerde ortak olarak açılan ve çalışan tek dosya türü text dosyalarıdır(notepad).Ama notepad ile en basitinden bir tablo oluşturup bunun üzerinde çalışmak istediğimizde bile bu tabloyu organize etmek baya bir zor olacaktır:kolonların sırası kayabilir,karışabilir….Bunun yerine tablolarımızı hiyerarşik yapı ile xmle atmak işimizi bayağı bir kolaylaştıracaktır.Xml verinin hızlı bir şekilde sogulanmasını,değiştirilmesini,transfer edilmesini,verinin içerik bilgisi ile saklanmasını(bu noktada htmlden ayrılır) sağlar.Xmlin güzel yanlarından birtanesi de uluslararası bir standarttır ve evrensel bir formattır ve firewallara takılmaz(text tabanlı olmasından kaynaklı).

Web Servisinin İşleyişi :
1.       Eğer kullanılacak XML Web Servisinin adresi bilinmiyorsa bir UDDI dizini yardımı ile bir XML Web Servisi bulunur.
2.       Discovery dosyasına (.disco) yapılan istek ile web servisinin tanımlama dosyasına yönelinir.
3.       Web Servisinin açıklama dosyası olan WSDL dosyasına istek yapılır. Servis biçimi öğrenilir.
4.       Artık XML Web Servisinin metodları çalıştırılmaya hazır olarak istemcinin hizmetindedir. XML Web servisinin metodları çalıştırılır.

Web Servis Kullanımı:Web Servisi(metodları) yazıldıktan sonra proje referans olarak eklenir.Referans olarak ekledikten sonra web servis metodlarına projeden erişilip metodlar kullanılabilir.Küçük bir örnek ile web metodun nasıl göründüğü ile fikir edinmek gerekirse:


public class Service1 : System.Web.Services.WebService
    {

        [WebMethod]
        public int Toplam(int a, int b)
        {
            return a+b;web 
        }

        [WebMethod]
        public int Cikarma(int a, int b)
        {
            return a - b;
        }
.
.
.
Web servis çalıştırılınca şekildeki gibi görünür.

Web servis kullanmak için eklenmesi gereken kod parçası,
localhost.Service1 ws = new localhost.Service1();

Metodlar da şu şekilde kullanılır:
label1.Text = ws.Toplam(a, b).ToString();

Web servis eklendikten sonra şu şekilde görünür:

 

Web Servisi Standartları:

Web Servisi = SOAP + WSDL + UDDI

SOAP(Simple Object Access Protocol): SOAP distributed (dağıtık) uygulamalarda ve web servislerinin haberleşmesinde kullanılmak üzere tasarlanan, istemci/sunucu mantığına dayalıbir protokoldür.. SOAP protokolü sayesinde web servisleri, basit ve mesaj tabanlı bir iletişim sağlar. SOAP'ı benzeri protokollerden ayıran en belirgin ve üstün özelliği yapısının  SOAP'ı benzeri protokollerden ayıran en belirgin ve üstün özelliği yapısının  XML üzerine kurulu olmasıdır.
Soap’da header ve body kısımları vardır.Body kısmına mesajın ne olduğu yazılır.Güvenlik amacı ile Soap Headera kullanıcı adı ve şifre gömülebiliyor.
WSDL(Web Services Description Language):Bir uygulamada web servisini kullanabilmek için web servisinin hangi protocolleri içerdiğini,arayüzünün nasıl olduğunu,nasıl çağrılabileceğini bilmek gerekir.Bu noktada UDDI’ya ihtiyaç duyulur.UDDI web servisi tanımlamalarını tutn bir protokoldür.
UDDI(Universal Description Discovery and Integration): UDDI kurumların kendilerini ve sağladıkları servisleri yayınlayarak tanıtamalarını, ve bu bilgilerin daha sonra diğer kurumlarca taranıp bulunmasını sağlayan bir standarttır.

okulumuzun readmee e-dergisinde yayınlanan yazım,

DERYA GÜNDÜZ 
BİLGİSAYAR MÜHENDİSLİĞİ 4. SINIF

1 yorum:

Adsız dedi ki...

bilgilerinizden çok faydalandım teşekkür ederim

 
Facebook

Bizi takip edin!

ESOGÜ Bilişim GünleriESOGÜ Bilişim Günleri