SOAP ve REST

Bu kavramları açıklamadan önce, bahsetmek isterim ki her iki mimarininde çok büyük oyuncuları var. Bunlardan hangisini kullanmak isteyeceğimiz tercih meselesi. Ben geliştirdiğim projelerde SOAP mimarisini kullanıyorum. Ancak bu aralar neden REST ile ilgili çalışma yapmadığımı sorguladım ve iki mimari arasındaki farkları, avantajları ve dezavantajlarını karşılaştırdım. Öncelikle SOAP ve REST hakkında genel bilgiler verdikten sonra uygulamamızda hangisini tercih etmemiz gerektiğinden bahsedeceğim. 

SOAP(Simple Object Access Protocol)

SOAP(tr: Basit Nesne Erişim Protokolu) en temel anlamda, internet üzerinden küçük miktarda bilgileri yada mesajları aktarma protokoludur. SOAP mesajları XML formatındadırlar ve  genellikle HTTP(Hyper Text Transfer Protocol) protokolu(bazende TCP/IP) kullanılarak gönderilirler. Burada dikkat edilmesi gereken en önemli durumlardan biri SOAP bizi XML tabanlı kullanıma mecbur bırakır. Bu konuda esnek değildir.

 Kimler SOAP Kullanıyor?

Buna verilebilecek en büyük örnek Google. Blogger dışında bir çok uygulamasında SOAP kullanıyor. Bir çok kurumsal yazılımda SOAP kullanıldığını görebilirsiniz.

REST(REpresentational State Transfer) 

REST(tr: Temsili Durum Transferi) en temel anlamda, İstemci ve Sunucu(Client-Server) arasında veri alış verişinin basit bir yoludur. REST mimarisi standart bir tanımlamaya ihtiyaç duymaz. REST ile veri alış verişini JSON, XML hatta Text formatında bile yapabilirsiniz. Esnek bir yapıya sahiptir. REST mimarisinde HTTP metodlarından yararlanılır. DELETE, GET, POST ve PUT metodları kullanılır.

 Kimler REST Kullanıyor?

Neredeyse Yahoo'nun tüm servisleri REST kullanır. Amazon ve eBay hem SOAP hem de REST mimarilerini kullanmaktadırlar.

SOAP mı REST mi?

SOAP mı daha iyi, REST mi? Böyle bir karşılaştırma yapmanın anlamlı olmadığını düşünüyorum. SOAP yada REST seçimi, kullandığımız yapının uygunluğu açısından değerlendirilerek yapılması gerekiyor.

Güvenlik: SOAP üzerinde güvenlik(security) sağlamak daha kolay ve hızlı şekilde olabiliyorken, bu durum REST için karmaşık olabiliyor. Eğer güvenliğin çok önemli olduğunu düşündüğünüz bir uygulamadaysanız SOAP kullanmanızı öneririm.

Data Yapısı: REST ile JSON, XML hatta TEXT ile çalışabiliyorken, SOAP ile XML kullanmalıyız. REST bu sayede daha kullanışlı olabiliyor. JSON ile daha küçük boyutlarda verilerle işlemler gerçekleştirebiliyorsunuz. Eğer data boyutları uygulamanız için önem arz ediyorsa REST kullanmak sizin için uygun olacaktır.

Uygulama Hızı: Uygulamanızın daha hızlı çalışmasını istiyorsanız REST kullanmanız yararınıza olacaktır.

Destek: SOAP için geliştirici araçları daha iyidir. Kullanmamız için bize yardımcı olacak daha çok kaynak bulabiliriz. http://www.erenguvercin.com/

 

Add comment

The file '/Custom/Widgets/Calendar/widget.cshtml' does not exist.The file '/Custom/Widgets/Category list/widget.cshtml' does not exist.The file '/Custom/Widgets/Tag cloud/widget.cshtml' does not exist.The file '/Custom/Widgets/Page List/widget.cshtml' does not exist.The file '/Custom/Widgets/Month List/widget.cshtml' does not exist.