Sobes.tech
Middle

Milyen dependency injection (DI) megközelítést tervez használni?

sobes.tech MI

Válasz az MI-től

A Dagger2/Hilt használatát tervezem (ha a projekt Kotlinban van Gradle buildSrc/convention plugins vagy migrációs lehetőséggel), mivel ez a de facto szabvány az iparban, statikus függőségi gráf ellenőrzést nyújt és magas teljesítményt biztosít.

Az alternatívákat, amelyeket szintén figyelembe veszek, a projekt méretétől és a kiválasztott stack-től függően:

  • Koin: Könnyebb, kisebb és közepes Kotlin projektekhez alkalmas, nem igényel kódgenerálást.
  • Kodein-DI: Egy másik DI könyvtár Kotlinhoz, DSL alapú.

A konkrét megközelítés kiválasztása a következő tényezőktől függ:

  1. A projekt nyelve: Kotlin (Koin, Kodein) vagy Java (Dagger2).
  2. A projekt mérete: Nagyobb projektek esetén a Dagger2/Hilt előnyösebb a statikus ellenőrzés miatt.
  3. Teljesítményigények: A Dagger2/Hilt általában gyorsabb futásidőben.
  4. Csapat tapasztalata: Ha a csapat már dolgozott egy adott könyvtárral, az gyorsíthatja a fejlesztést.

Ideális esetben a Hilt használatára törekednék, mint ajánlott megközelítésre az új Android projektekben, amelyek Jetpack-et használnak.