Sobes.tech
Middle

Welchen Ansatz für Dependency Injection (DI) planen Sie zu verwenden?

sobes.tech KI

Antwort von AI

Ich plane, Dagger2/Hilt zu verwenden (wenn das Projekt in Kotlin mit Gradle buildSrc/convention plugins oder mit Migrationsmöglichkeit ist), da es in der Branche der De-facto-Standard ist, statische Überprüfung des Abhängigkeitsgraphen bietet und eine hohe Leistung aufweist.

Die Alternativen, die ich ebenfalls in Betracht ziehe, abhängig von der Projektgröße und dem gewählten Stack:

  • Koin: Leichter, geeignet für kleine und mittlere Kotlin-Projekte, erfordert keine Codegenerierung.
  • Kodein-DI: Eine weitere DI-Bibliothek für Kotlin, basierend auf DSL.

Die Wahl eines bestimmten Ansatzes hängt ab von:

  1. Projektsprache: Kotlin (Koin, Kodein) oder Java (Dagger2).
  2. Projektgröße: Für große Projekte ist Dagger2/Hilt aufgrund der statischen Überprüfung vorzuziehen.
  3. Leistungsanforderungen: Dagger2/Hilt sind in der Regel schneller zur Laufzeit.
  4. Team-Erfahrung: Wenn das Team bereits mit einer bestimmten Bibliothek gearbeitet hat, kann dies die Entwicklung beschleunigen.

Im Idealfall würde ich versuchen, Hilt als empfohlenen Ansatz für neue Android-Projekte zu verwenden, die Jetpack nutzen.