Sobes.tech
Junior — Middle

Layihələrinizdə Dependency Injection üçün hansı alətlər və ya kitabxanaları istifadə etmisiniz?

sobes.tech Süni İntellekt

AI-dan cavab

Android layihələrində, asılılıqların injeksiyası üçün tez-tez aşağıdakı kitabxanalar istifadə olunur:

  • Dagger 2 — Google tərəfindən hazırlanmış statik və tərtib olunan DI çərçivəsi, kodu tərtib zamanı yaradır və yüksək performans təmin edir.
  • Hilt — Dagger 2 üzərində qurulmuş, onun istifadəsini və Android komponentləri ilə inteqrasiyasını sadələşdirən qat.
  • Koin — Kotlin-də yüngül DI çərçivəsi, kod yaradılmasını tələb etmir və konfiqurasiya üçün daha sadədir, kiçik və orta layihələr üçün uyğundur.

Koin istifadə nümunəsi:

// Modul təyini
val appModule = module {
    single { Repository() }
    factory { ViewModel(get()) }
}

// Application-da Koin-in başlanması
class App : Application() {
    override fun onCreate() {
        super.onCreate()
        startKoin {
            androidContext(this@App)
            modules(appModule)
        }
    }
}

// Activity-də injeksiya
class MainActivity : AppCompatActivity() {
    private val viewModel: ViewModel by inject()
}

Alət seçimi layihənin tələblərinə və komandanın üstünlüklərinə bağlıdır.