Sobes.tech
Middle

Uygulama geliştirmede temiz mimari ne için kullanılır?

sobes.tech yapay zeka

AI'dan gelen yanıt

Temiz Mimari (Clean Architecture), aşağıdaki hedeflere ulaşmak için kullanılır:

  1. Çerçevelerden bağımsızlık: Uygulamanın iş mantığı, belirli UI çerçevelerine, veritabanlarına veya dış hizmetlere bağlı değildir. Bu, bu bileşenleri kolayca değiştirmeyi sağlar ve uygulamanın çekirdeğinde önemli değişiklikler yapmadan.
  2. Test edilebilirlik: İş mantığının, uygulamanın detaylarından (UI, veritabanı) ayrılması sayesinde, birim ve entegrasyon testleri daha kolay izole edilir ve test edilir.
  3. UI bağımsızlığı: Veri gösterimi ve kullanıcı ile etkileşim, kullanım durumlarından (Use Cases) ayrılmıştır, bu da uygulamanın farklı platformlara (Mobil, Web, Masaüstü) veya UI değişikliklerine uyum sağlamasını kolaylaştırır.
  4. Veritabanı bağımsızlığı: Veri kaydetme ve alma mantığı, iş kurallarından ayrılmıştır, bu da veritabanını değiştirmeyi veya farklı depolama çözümleri kullanmayı kolaylaştırır.
  5. Dış ajanlardan bağımsızlık: Dış sistemlerle (API, üçüncü taraf servisler) etkileşim, katmanlar halinde kapsüllenmiş ve bu da iş mantığı üzerindeki etkilerini en aza indirir.

Genellikle katmanlar içerir:

  • Entities: Uygulamanın iş kurallarını içerir. En iç katman.
  • Use Cases (Interactors): Kullanıcı ile uygulama arasındaki belirli etkileşimleri tanımlar. Uygulamanın özgü iş mantığını içerir.
  • Interface Adapters (Presenters, Controllers, Gateways): Verileri Use Cases ile dış ajanlar (UI, DB, API) arasında dönüştürür.
  • Frameworks & Drivers: Dış katman, uygulama detaylarını içerir (UI çerçeveleri, veritabanları, web servisleri vb.).

Bağımlılık ilkesi: Bağımlılıklar her zaman içe doğru yöneliktir, dış katmanlardan iç katmanlara doğru.