Junior — Middle
Welke tools of bibliotheken voor Dependency Injection heb je gebruikt in je projecten?
sobes.tech AI
Antwoord van AI
In Android-projecten worden vaak de volgende bibliotheken gebruikt voor Dependency Injection:
- Dagger 2 — een statisch, gecompileerd DI-framework van Google dat code genereert tijdens de compilatie, wat zorgt voor hoge prestaties.
- Hilt — een bovenlaag over Dagger 2 die het gebruik en de integratie met Android-componenten vereenvoudigt.
- Koin — een lichtgewicht DI-framework in Kotlin dat geen codegeneratie vereist en eenvoudiger te configureren is, geschikt voor kleine en middelgrote projecten.
Voorbeeld van gebruik van Koin:
// Module-definitie
val appModule = module {
single { Repository() }
factory { ViewModel(get()) }
}
// Initialisatie van Koin in Application
class App : Application() {
override fun onCreate() {
super.onCreate()
startKoin {
androidContext(this@App)
modules(appModule)
}
}
}
// Injectie in Activity
class MainActivity : AppCompatActivity() {
private val viewModel: ViewModel by inject()
}
De keuze van het hulpmiddel hangt af van de projectvereisten en de voorkeuren van het team.