MVVM Clean Architecture (Temiz Mimari)

emintolgahanpolat
2 min readJan 9, 2024

--

Merhabalar! Bu yazıda mobil uygulamalarda temiz mimari ile ilgili kavramları basit bir şekilde açıklamayı hedefliyorum.

Uygulama geliştirirken, kodlarımızın anlaşılabilir olması ve tekrarlardan uzak durması önemlidir. Aynı işlemi yapan kod blokları kullanıyorsanız, bir yerde hata yapıyor olabilirsiniz. Kodun bir kısmının doğru çalışıp çalışmadığını anlamak için o birimi test edecek bir kod yazabilmelisiniz; bu da temiz kodun bir göstergesidir.

Temiz koda ulaşmak için çeşitli tasarım kalıplarından yararlanmanız gerekecektir. Büyük ihtimalle, bu kalıpları kullanmak zorunda kalacaksınızdır, çünkü temiz mimariyi oluşturan önemli unsurlardır.

İnternette temiz mimari yazdığınızda karşınıza çıkacak terimler, veri akışını şu şekilde gösterir:

Repository: Bu katman, veriyi servisten veya cihazın lokalinden ulaşmamızı sağlayan depo katmanıdır. Repo içerisinde veri oluşturma, okuma, güncelleme ve silme (CRUD) işlemleri dışında veriyi manipüle edip kullanılacak işlemler yapmamalıyız.
UseCase: Bu katman, uygulamamızın aldığı verileri UI’da gösteren veya UI’dan aldığı veriyi servise doğrudan gönderen ve arada herhangi bir kontrol yapmayan durumlarda gereksiz gibi görünebilir. Ancak, veriyi işlemeden önce farklı repolarda işlem yapmak gerekiyorsa veya farklı sonuçlar elde etmek için farklı yöntemler kullanılacaksa, bu paterni kullanabiliriz. Veriyi çekerken dönüştürme işlemi gerekiyorsa da kullanılabilir. Özetle, herhangi bir işlemi viewmodelde veya repositoryde değil, aradaki katmanda yapmalıyız.
ViewModel: Bu katman, view içerisinde kullanılacak verilere repository veya UseCase üzerinden erişir ve view’i kontrol eden kodları içerir.
View: Bu katman, arayüz öğelerinin bulunduğu ve input/output işlemlerinin yapıldığı kısımdır.

--

--

No responses yet