Web Servis Nedir ve Uygulama Geliştirme

Web Servis web üzerinden HTTP protokolü ile hizmet veren program parçalarıdır. Bir
kullanıcının HTTP üzerinden bir web servisi kullanmasına RPC(Remote Procedure Call)
denmektedir HTTP üzerinden yapılan bu çağrımlara karşı SOAP(Simple Obect Access Protocol)
dediğimiz protokol XML çıktıları üretir. Veri transferi bu XML çıktıları sayesinde yapıldığı için
platform bağımsız bir yapısı vardır. Web servisi kullanmak istediğiniz program parçasının hangi
dilde yazıldığının pek bir önemi yoktur.Çünkü sonuçta Web servisten alacağınız veri tipi
XML’dir.Bundan dolayı C# ile yazılmış bir Web Servis Java tarafından Java ile yazılan bir Web
Servis .Net teknolojileri tarafından kolayca kullanılabilmektedir.Bu yazılımların çalıştıkları
platformalarında pek önemi yoktur Unix üzerinde çalışan bir uygulamayla Windows üzerinde
çalışan bir uygulama aynı Web Servisi sorunsuzca kullanabilirler.Bir web servisten veri okuyup ,
veri almak istediğinizde bilgisayarınızda veri transferinin gerçekleşmesi için bir port açılır ve bu
portan veri okunup veri gönderilir.SOAP dışında birtakım standartlar da vardır, bunlar XML,
WSDL, DISCO ve UDDI gibi sıralanabilir. XML ,web servislerinin veriyi sunmak için
kullandığı bir standarttır. WSDL(Web Service Description Language) ,web servisinin sunduğu
arayüzü tanımlamak için kullanılır, bir web servisinde bulunan fonksiyonların hangi parametreleri
aldığını ve ürettiği bilginin türünü bu standartlar ile belirtiriz. DISCO(Dıscovery Protocol)
sayesinde ise bir sunucuda paylaşıma açılmış bütün web servislerinin organizasyonu sağlanır.
UDDI(Universal Description, Discovery and Integration) standartları, internet üzerinde
paylaşıma açılmış ve uygulamalar tarafından kullanılabilecek web servislerinin organizasyonunu
sağlar. Bir web servis uygulaması yaratıldığında, bu web servisi kullanacak olan uygulamaların
web servisinin nerede olduğunu öncelikle bilmesi gerekir. Bunu sağlayan ise web proxy’lerdir.
Bir web proxy yazmak çoğunlukla kafa karıştırıcı kodlardan oluşmaktadır. Ancak VS.Net gibi bir
ortamda bunu hazırlamakta oldukça kolaydır. Uygulamaya, web servisin yeri Web Proxy dosyası
ile bildirildikten sonra, uygulamamızdan bu web servis üzerindeki metodlara kolayca erişebiliriz.