Oyun Kitabı

Versiyon Sapması ve Sözleşme Disiplini (Versiyon Sapmasi Ve Sozlesme Disiplini)

Versiyon Sapması ve Sözleşme Disiplini — lojistik operasyonlarında üretim dersi.

Lojistik Mikro Frontend Platformu (Module Federation)

Bolum 9 / 10

Lojistik operasyon panellerini Module Federation ile shell, auth ve feature remote'lara ayırma serisi.

Micro frontend architecture diagram

Versiyon Sapması ve Sözleşme Disiplini

remoteEntry bir API'dir; semver düşünün. Keep expose paths and props stable; treat remote public modules as an API.

expose path stable; internals can move

remoteEntry bir API'dir; semver düşünün.

Kavramlar ilk geçtiği yerde

📦 Shell (Host)
Remotes'u yükleyen, ortak layout ve üst seviye routing taşıyan uygulama.

📦 Remote
remoteEntry.js üzerinden modül expose eden bağımsız build.

📦 Expose Path
Tüketicilerin import ettiği public modül yolu (ör. auth/Login).

📦 Shared Singleton
React gibi bağımlılıkların tek kopyada çalışmasını zorunlu kılan Federation ayarı.

Bu kavramları ayırt edemeyen ekip, UI ile entegrasyon sınırını karıştırır.

Problemin şekli

Keep expose paths and props stable; treat remote public modules as an API.

expose path stable; internals can move

Çalışan ayrım

remoteEntry bir API'dir; semver düşünün.

expose path stable; internals can move
        ↓
   explicit contract

Üretimde kırılan yer

Sözleşme veya yarıçap/kimlik/deploy varsayımları gizlendiğinde incident büyür. Görünür sözleşme, görünür geri alma.

Bu bölümde en çok karışan eşleştirmeler

❌ Her şey tek uygulamada daha güvenli
✓ Sınırlar net değilse tek uygulama daha kırılgandır

❌ Konfigürasyon kodda hardcoded kalsın
✓ Yarıçap, remote URL ve expose path operasyonel kontratlardır

❌ Vendor/API gerçeği UI state'tir
✓ Vendor feed kanıt, ops state karardır

Kendi sisteminizi denetleme listesi

  1. Bu yüzeyin sahiplik sınırını bir cümleyle yazın.
  2. Hangi kontrat değişirse kim deploy eder?
  3. Timeout veya vendor gecikmesinde UI ne gösterir?
  4. Standalone ve gömülü senaryoları ayrı test ediyor musunuz?
  5. Deny-list: içerikte firma/vendor domain sızıntısı var mı?

Bu bölümden aklında kalması gerekenler

  1. Sözleşme görünür olmalıdır: expose path, yarıçap, ticket durumu veya remote URL.
  2. UI ile dış sistem arasındaki boşluk tasarım kararıdır, bug değil.
  3. Bağımsız deploy, bağımsız geri alma demektir.

Gizlediğiniz sınır, üretimde sizi bulur.

SSS

Sık sorulan sorular

Shell (Host) nedir?

Remotes'u yükleyen, ortak layout ve üst seviye routing taşıyan uygulama.

Remote nedir?

remoteEntry.js üzerinden modül expose eden bağımsız build.

"Her şey tek uygulamada daha güvenli" doğru mu?

Sınırlar net değilse tek uygulama daha kırılgandır

Bu bölüm neyi sabitler?

remoteEntry bir API'dir; semver düşünün. remoteEntry bir API'dir; semver düşünün. Keep expose paths and props stable; treat remote public modules as an API.

Ogrenilen Muhendislik Prensipleri

  • Sahiplik ve yayın sınırı, domain model kadar gerçektir.
  • Dış sistem kanıt üretir; operasyonel durum sizde karara bağlanır.
  • Kontratı semver gibi yönetin; iç detayı serbest bırakın.

Okumaya devam et

Okumaya devam et

Seride sonraki yazi

Seride sonraki yazi

Ayni seriden

Paylaş