Blog

SAPUI5’te OData V2 ve V4 Karşılaştırması

SAPUI5 tabanlı Fiori uygulamalarının çoğu uzun süre OData V2 protokolü ile geliştirildi. Ancak SAP’nin modern geliştirme paradigması olan SAP RAP (RESTful Application Programming Model) ile birlikte, artık OData V4 desteklenmekte ve hatta birçok yeni özellik sadece V4 ile çalışmaktadır.

OData V2 ve V4 Arasındaki Temel Farklar Nelerdir?

Aşağıda OData V2 ve V4 protokollerinin SAPUI5 içerisindeki temel farklarını bulabilirsiniz.

Özellik

OData V2

OData V4

Model Sınıfı

sap.ui.model.odata.v2.ODataModel

sap.ui.model.odata.v4.ODataModel

Metaveri Erişimi ($metadata)

Otomatik & statik

Daha gelişmiş, context-aware

autoExpandSelect

Yok

V4’te önemli bir performans avantajı

$batch desteği

Sınırlı

Gelişmiş

Filtreleme / Sıralama

operationMode: "Client" / "Server"

Yalnızca "Server" önerilir (daha güvenli)

Model Değişiklik Takibi (getPendingChanges)

Mevcut

Daha güçlü, delta senkronizasyonu içerir

Deep Insert

Kısıtlı

Tam destekli

autoExpandSelect Özelliği

OData V4 modelinde kullanılan autoExpandSelect: true, UI5’in yalnızca UI üzerinde kullanılan alanlara göre otomatik $select ve $expand parametreleri oluşturmasını sağlar. Bu özellik sayesinde yalnızca gerekli alanlar backend’den çekilir, gereksiz veri yükü engellenir.

autoExpandSelect Özelliği
autoExpandSelect Özelliği

Eğer View içinde sadece {CustomerName} ve {OrderDate} binding varsa, backend’e şu istek gider:

GET /SalesOrders?$select=CustomerName,OrderDate

Böylelikle performans kazancı sağlamış olur.

$batch Mekanizması

OData V2’de $batch desteği vardı ama karmaşık ve sınırlıydı. Tüm değişiklikler modelde toplanır, submitChanges() ile gönderilirdi. Grup kontrolü zayıftı.

$batch Mekanizması
$batch Mekanizması

Bu yapı sayesinde sadece belirtilen gruptaki değişiklikler gönderilir. Ayrıca tüm işlem transaction-safe olur. Yani bir hata varsa tamamı geri alınır.

Model Değişiklik ve Delta Senkronizasyonu

OData V2’de tüm değişiklikler model düzeyinde takip edilirdi (getPendingChanges).

V4 delta senkronizasyonu destekler: yalnızca değişen alan backend’e gönderilir. Bu, veri trafiğini düşürür ve sistem yükünü azaltır.

Model Değişiklik ve Delta Senkronizasyonu
Model Değişiklik ve Delta Senkronizasyonu

OData V2 ve V4: Hangisi Projeniz İçin Daha Uygun?

Senaryo

V2

V4

Mevcut sistem sadece V2 destekliyorsa

Uygun

Uygun değil

Yeni uygulama, RAP modelle geliştirilecekse

Uygun

Uygun değil

UI5 Smart Controls ağırlıklı kullanılıyorsa

Uygun

Sınırlı

Performans ve sadece ihtiyaç kadar veri

Uygun değil

Uygun

Delta senkronizasyon ve transaction-safe batch

Uygun değil

Uygun

OData V4, SAPUI5 geliştiricilerine daha modern, güvenli ve kontrollü bir veri erişim modeli sunar. autoExpandSelect, context bazlı değişiklik takibi ve gelişmiş batch yönetimi gibi özellikler sayesinde büyük projelerde sürdürülebilirlik ve performans avantajı sağlar.

Ancak tüm SAP sistemleri V4 desteklemediği için mevcut sistem altyapısına göre uygun versiyonu seçmek önemlidir. Yeni projelerde V4’ü tercih etmek, gelecekteki uyumluluk ve geliştirme kolaylığı açısından büyük avantaj sağlar.

MDP Group SAP Fiori danışmanlığı hakkında bilgi almak için bizimle iletişime geçin.


Benzer
Bloglar

Mailiniz başarıyla gönderilmiştir en kısa sürede sizinle iletişime geçilecektir.

Mesajınız ulaştırılamadı! Lütfen daha sonra tekrar deneyin.