Konuyu Oyla:
  • Derecelendirme: 3.33/5 - 3 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Delphi Rest Api
#1
Selamlar,
Delphi ile Rest çalışması yapan oldu mu aramızda, Android uygulamam daha fazla büyümeden SOAP'tan REST'e geçireyim diyorum. Ama sanırım mantığını tam kavrayamadım
WWW
Cevapla
#2
(27-11-2017, Saat: 16:19)yhackup Adlı Kullanıcıdan Alıntı: Selamlar,
Delphi ile Rest çalışması yapan oldu mu aramızda, Android uygulamam daha fazla büyümeden SOAP'tan REST'e geçireyim diyorum. Ama sanırım mantığını tam kavrayamadım

Soap ile çok büyük projeler yapmış birisi olarak merakımdan soruyorum; "daha fazla büyümeden" derken soap'a güvenmediğinizi söylüyorsunuz sanırım. Herhangi bir sebebi var mıdır? (Bugün başladığımız bir diğer projede yine soap kullanıyoruz o açıdan soruyorum) Yoksa eski bir teknoloji olduğu için üzerine yatırım yapmayı mı istemiyorsunuz?
Cevapla
#3
Merhaba,
Aslında sorunum Android tarafında doğuyor,
Delphi tarafında oluşturulan ve içerisinde dönen liste içerisinde, her bir elemanın içerisinde liste bulunması durumlarda XML'i java ile parse ederken problem yaşıyorum.
Bu sebebtep soap'ta string içerisinde json veri oluşturup veriyi java tarafında çok kolay ve basit bir yöntem ile pars edebiliyorum.
WWW
Cevapla
#4
Çok eskiden ben bir deneme yapmıştım.Mantığını kavramanda yardımcı olabilir.



Burada da daha önce Kemal Ağabeyim ile yaptığımız örnek bir çalışma var.Bunlar sana fikir verebilir.
WWW
Cevapla
#5
(27-11-2017, Saat: 16:42)ismailkocacan Adlı Kullanıcıdan Alıntı: Çok eskiden ben bir deneme yapmıştım.Mantığını kavramanda yardımcı olabilir.



Burada da daha önce Kemal Ağabeyim ile yaptığımız örnek bir çalışma var.Bunlar sana fikir verebilir.

Merhaba,
Paylaşım ve değerli anlatımınız için teşekkür ederim.

Bu arada Kemal Ağabey'i de aramızda daha aktif görmek isteriz.  Idea
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#6
(27-11-2017, Saat: 16:29)Abdullah ILGAZ Adlı Kullanıcıdan Alıntı:
(27-11-2017, Saat: 16:19)yhackup Adlı Kullanıcıdan Alıntı: Selamlar,
Delphi ile Rest çalışması yapan oldu mu aramızda, Android uygulamam daha fazla büyümeden SOAP'tan REST'e geçireyim diyorum. Ama sanırım mantığını tam kavrayamadım

Soap ile çok büyük projeler yapmış birisi olarak merakımdan soruyorum; "daha fazla büyümeden" derken soap'a güvenmediğinizi söylüyorsunuz sanırım. Herhangi bir sebebi var mıdır? (Bugün başladığımız bir diğer projede yine soap kullanıyoruz o açıdan soruyorum) Yoksa eski bir teknoloji olduğu için üzerine yatırım yapmayı mı istemiyorsunuz?

Merhaba,

İşin doğrusu ben de SOAP taraftarıyım. Ama SOAP'ın çok ciddi bir XML yükü var. Bu yüzden de özellikle yüklü miktarlarda veri göndermek istediğinizde çok fazla gereksiz XML verisi de göndermiş oluyorsunuz. REST API'si hem mimarisi, hem de genelde JSON kullandığı için bu sorun çok daha az.

Abdullah Bey, acaba siz kendi projelerinizde SOAP'ın bu ciddi XML veri yükünü yönetmek için bir şeyler yapıyor musunuz? Yapıyorsanız neler yapıyorsunuz? Smile

Teşekkürler
Cevapla
#7
(27-11-2017, Saat: 17:03)Bahadir.Alkac Adlı Kullanıcıdan Alıntı:
(27-11-2017, Saat: 16:29)Abdullah ILGAZ Adlı Kullanıcıdan Alıntı: Soap ile çok büyük projeler yapmış birisi olarak merakımdan soruyorum; "daha fazla büyümeden" derken soap'a güvenmediğinizi söylüyorsunuz sanırım. Herhangi bir sebebi var mıdır? (Bugün başladığımız bir diğer projede yine soap kullanıyoruz o açıdan soruyorum) Yoksa eski bir teknoloji olduğu için üzerine yatırım yapmayı mı istemiyorsunuz?

Merhaba,

İşin doğrusu ben de SOAP taraftarıyım. Ama SOAP'ın çok ciddi bir XML yükü var. Bu yüzden de özellikle yüklü miktarlarda veri göndermek istediğinizde çok fazla gereksiz XML verisi de göndermiş oluyorsunuz. REST API'si hem mimarisi, hem de genelde JSON kullandığı için bu sorun çok daha az.

Abdullah Bey, acaba siz kendi projelerinizde SOAP'ın bu ciddi XML veri yükünü yönetmek için bir şeyler yapıyor musunuz? Yapıyorsanız neler yapıyorsunuz? Smile

Teşekkürler

Servisimin basit bir 4 kayıtlık XML çıktısı ve JSON çıktısı

rJ4moV.png

En azından şimdilik böyle alıyorum, Androd tarafında pars işlemi daha zahmetsiz
qJ0mzQ.png
WWW
Cevapla
#8
(27-11-2017, Saat: 17:03)Bahadir.Alkac Adlı Kullanıcıdan Alıntı: Merhaba,

İşin doğrusu ben de SOAP taraftarıyım. Ama SOAP'ın çok ciddi bir XML yükü var. Bu yüzden de özellikle yüklü miktarlarda veri göndermek istediğinizde çok fazla gereksiz XML verisi de göndermiş oluyorsunuz. REST API'si hem mimarisi, hem de genelde JSON kullandığı için bu sorun çok daha az.

Abdullah Bey, acaba siz kendi projelerinizde SOAP'ın bu ciddi XML veri yükünü yönetmek için bir şeyler yapıyor musunuz? Yapıyorsanız neler yapıyorsunuz? Smile

Teşekkürler

Bahadır Bey, öncelikle taraf güçlendirmesi yaptığınız için teşekkür ederim.

Projelerin genişleme türüne göre tedbir alıyoruz. Bir projenin sadece windows tabanlı (ki bu durumda da yapıyoruz) olmasında yaklaşım biraz değişiyor. Mobil, web ve masaüstü platformları ne kadar bir arada ve çeşitli işlemleri paylaşıyor olsa da, hepsinin uygulama katmanını web servis üzerinde yapıyoruz. Böylece her platforma has baştan kodlamalar yapılmıyor. Platform bazlı çeşitli kontrol ve denetimler dışında kapsülleme için oluşturulan veri tipleri dahi bu servisler üzerinde tasarlanıyor.

İlerleyen zamanda projeye 3. parti geliştirme yapmak isteyenler olduğunda altyapının müsait olmasından ötürü talep edilen metodların ayrılıp bir token ile verildiği ek servislere taşımak çok kısa oluyor. Orada da çok katmanlı mimari üzerinden servis geliştirdiğimiz için n tane asmx dosyasına business metodlarını çıkartmamızın bir sakıncası olmuyor.

Dokümantasyon işi çok fazla yük alıyor. Onun haricinde XML parse işlemleri ile uğraşmıyoruz. Doğrudan wsdl'den oluşan pas dosyaları ile yerel soap nesnesi oluşturup metodları invoke ediyoruz. Tek tip mantığını da veritabanına göre planladığımız zaman her platform için başka kişiler geliştirme yapacağını hesaba koyarsak; tek bir dil ve standart üzerine yoğunlaşılıyor. Metod imzaları, isimlendirmeler, complex types dediğimiz veri yönetimi için oluşturulan özel obje tiplerine kadar her şey ortak kalmış oluyor.

Her ne kadar xml yük gibi gözükse de, güvenliği ve kararlılığı açısından benim vazgeçmem ilk aşamada çok zor gözüküyor.

E-fatura gibi milyonlarca datanın aktığı sistemlerin altyapısının planlamasında xml tercih ediliyorsa bir sebebi vardır kesinlikle. Buradan yola çıkarak; UBL (evrensel iş dili) standartları gibi kendi jargonunuza has standart bir isimlendirme politikası çok ciddi anlamda kolaylık sağlar. 

Siz nasıl yaklaşıyorsunuz peki? Yönetimi, kullanımı ve dağıtımı açısından neler planlıyorsunuz? Smile
Cevapla
#9
(27-11-2017, Saat: 17:24)yhackup Adlı Kullanıcıdan Alıntı: Servisimin basit bir 4 kayıtlık XML çıktısı ve JSON çıktısı



En azından şimdilik böyle alıyorum, Androd tarafında pars işlemi daha zahmetsiz

Soap'ın zarfı veya gövdesinin kapsamı dönen sonuçların işleneceği platformda başınıza çok mu iş açıyor? Bu arada niçin FireMonkey değil de Java kullanıyorsunuz? FMX platformunda doğrudan Import WSDL üzerinden XML servisin pas dosyasını oluşturarak hızlı geliştirme yapabilirsiniz. Böylece Remotable meseleleriyle zaman kaybetmeden bir soap nesnesi oluşturup doğrudan arayüze uyarlayabilirsiniz. (Metod yapısı, katman ve sunum size kalmış)
Cevapla
#10
(27-11-2017, Saat: 17:25)Abdullah ILGAZ Adlı Kullanıcıdan Alıntı:
(27-11-2017, Saat: 17:03)Bahadir.Alkac Adlı Kullanıcıdan Alıntı: Merhaba,

İşin doğrusu ben de SOAP taraftarıyım. Ama SOAP'ın çok ciddi bir XML yükü var. Bu yüzden de özellikle yüklü miktarlarda veri göndermek istediğinizde çok fazla gereksiz XML verisi de göndermiş oluyorsunuz. REST API'si hem mimarisi, hem de genelde JSON kullandığı için bu sorun çok daha az.

Abdullah Bey, acaba siz kendi projelerinizde SOAP'ın bu ciddi XML veri yükünü yönetmek için bir şeyler yapıyor musunuz? Yapıyorsanız neler yapıyorsunuz? Smile

Teşekkürler

E-fatura gibi milyonlarca datanın aktığı sistemlerin altyapısının planlamasında xml tercih ediliyorsa bir sebebi vardır kesinlikle. 
Tercih sebebi; XML veriyi,  şematron yardımıyla dinamik olarak kontrol edebiliyor olmak olabilir.REST'de henüz şematrona benzer bir yapı var mı bilmiyorum.
WWW
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi 10.3 Rest Debugger sorunu varyemez 4 141 31-05-2020, Saat: 01:36
Son Yorum: varyemez
  python, c++ for delphi tarzında eğitim, delphi ile diller arası entegrasyon eroniko 3 110 26-05-2020, Saat: 18:15
Son Yorum: engerex
  Delphi 10.3 Rio KeyBindings Abdullah ILGAZ 5 240 19-05-2020, Saat: 02:37
Son Yorum: Abdullah ILGAZ
Lightbulb Delphi Proje Yardım ThePixeL 18 1.264 29-04-2020, Saat: 02:28
Son Yorum: ThePixeL
  delphi clamav library sorunu, eroniko 6 446 27-04-2020, Saat: 03:27
Son Yorum: eroniko



Konuyu Okuyanlar: 1 Ziyaretçi