Sobes.tech
Junior — Middle

Quels outils ou bibliothèques d'injection de dépendances avez-vous utilisés dans vos projets?

sobes.tech IA

Réponse de l'IA

Dans les projets Android, les bibliothèques suivantes sont souvent utilisées pour l'injection de dépendances :

  • Dagger 2 — un framework DI statique et compilé de Google qui génère du code lors de la compilation, assurant ainsi de hautes performances.
  • Hilt — une surcouche à Dagger 2 qui facilite son utilisation et son intégration avec les composants Android.
  • Koin — un framework DI léger en Kotlin qui ne nécessite pas de génération de code et est plus simple à configurer, adapté aux petits et moyens projets.

Exemple d'utilisation de Koin :

// Définition du module
val appModule = module {
    single { Repository() }
    factory { ViewModel(get()) }
}

// Initialisation de Koin dans Application
class App : Application() {
    override fun onCreate() {
        super.onCreate()
        startKoin {
            androidContext(this@App)
            modules(appModule)
        }
    }
}

// Injection dans Activity
class MainActivity : AppCompatActivity() {
    private val viewModel: ViewModel by inject()
}

Le choix de l'outil dépend des exigences du projet et des préférences de l'équipe.