Middle
Welke aanpak voor dependency injection (DI) bent u van plan te gebruiken?
sobes.tech AI
Antwoord van AI
Ik ben van plan om Dagger2/Hilt te gebruiken (als het project in Kotlin is met Gradle buildSrc/convention plugins of met migratiemogelijkheden), omdat het de facto standaard in de industrie is, statische verificatie van de afhankelijkheidsgrafiek biedt en hoge prestaties heeft.
De alternatieven die ik ook overweeg, afhankelijk van de schaal van het project en de gekozen stack:
- Koin: Lichter, geschikt voor kleine en middelgrote Kotlin-projecten, vereist geen codegeneratie.
- Kodein-DI: Nog een DI-bibliotheek voor Kotlin, gebaseerd op DSL.
De keuze voor een specifieke aanpak hangt af van:
- Taal van het project: Kotlin (Koin, Kodein) of Java (Dagger2).
- Grootte van het project: Voor grote projecten is Dagger2/Hilt de voorkeur vanwege de statische verificatie.
- Prestaties: Dagger2/Hilt zijn over het algemeen sneller tijdens runtime.
- Teamervaring: Als het team al met een bepaalde bibliotheek heeft gewerkt, kan dit de ontwikkeling versnellen.
Ideaal zou ik proberen Hilt te gebruiken als aanbevolen aanpak voor nieuwe Android-projecten die Jetpack gebruiken.