Blog'a Dön
Engineering 8 dk okuma 2024-03-12

Mobil Uygulama Mimarilerinde Clean Architecture Kullanımı

A
Ahmet Y.
Lead Architect
Mobil Uygulama Mimarilerinde Clean Architecture Kullanımı

Yazılım dünyasında ölçeklenebilirlik, sadece daha fazla sunucu eklemek anlamına gelmez. Gerçek ölçeklenebilirlik, kod tabanının bakımını kolaylaştıran, ekip büyüdükçe karmaşıklığı yönetilebilir kılan mimari kararlarla başlar.

Temel Prensipler

Modern mobil uygulama geliştirme süreçlerinde karşılaştığımız en büyük zorluk, değişen gereksinimlere hızlı yanıt verebilmektir. Spagetti kod yapısı, kısa vadede hız kazandırsa da, uzun vadede teknik borç olarak geri döner.

Clean Architecture'ın dört temel katmanı:

  1. Domain Layer — İş mantığı ve entity'ler
  2. Data Layer — Repository implementasyonları ve veri kaynakları
  3. Presentation Layer — ViewModel/Presenter ve UI state yönetimi
  4. Framework Layer — Android/iOS framework'e bağlı kodlar

Pro Tip

Erken optimizasyon kökünde kötülük yatar. Ancak mimariyi baştan yanlış kurmak, optimizasyon değil, planlama hatasıdır.

Teknik Uygulama

Aşağıdaki örnekte, tipik bir mobil senaryoda veri akışının nasıl optimize edildiği görülebilir. İş mantığını sunum katmanından ayırıyoruz:

typescript
interface UseCase<I, O> {
  execute(input: I): Promise<O>;
}

// Domain Layer: Business Logic implementation
export class GetUserData implements UseCase<string, User> {
  constructor(private repository: UserRepository) {}

  async execute(id: string): Promise<User> {
    const user = await this.repository.findById(id);
    if (!user) throw new Error('User not found');
    return user;
  }
}

Bu yaklaşımın avantajı,

GetUserData
use case'inin hiçbir UI framework'üne bağımlı olmamasıdır. Aynı iş mantığı hem iOS hem Android tarafında paylaşılabilir.

Performans Metrikleri

Clean Architecture'a geçiş sonrası ölçtüğümüz metrikler:

  • TTFB iyileşmesi: %40
  • Eski mimari ortalama response: 1200 ms
  • Yeni mimari ortalama response: 240 ms
  • Kod tekrarı azalması: %65

Sonuç

Teknoloji sürekli değişiyor, ancak temiz kod ve sağlam mimari prensipleri baki kalıyor. Katmanlı mimari, ekibinizin ölçeklenmesini ve projenizin uzun ömürlü olmasını sağlayan en temel yatırımdır.

Architecture Swift Kotlin
A

Ahmet Y.

Lead Architect @ Varien. 10 yılı aşkın süredir Engineering alanında projeler geliştiriyor.

Bunlar da İlginizi Çekebilir