Middle
Кадом усул барои ворид кардани вобастагиҳо (DI) нақша доред истифода баред?
sobes.tech AI
Ҷавоб аз AI
Ман Dagger2/Hilt-ро истифода мебарам (агар лоиҳа дар Kotlin бо Gradle buildSrc/convention plugins ё бо имконияти мигратсия бошад), зеро он дар саноат стандарти де-факто мебошад, графи вобастагиро статикан текшур мекунад ва дорои иҷрои баланд мебошад.
Альтернативҳое, ки ман низ баррасӣ мекунам, вобаста ба андозаи лоиҳа ва стек интихобшуда:
- Koin: Легтар, барои лоиҳаҳои хурду миёна дар Kotlin мувофиқ, талаб намекунад генератсияи код.
- Kodein-DI: Як дигар китобхонаи DI барои Kotlin, асосёфта ба DSL.
Танзими конкретии муносибат ба:
- Забони лоиҳа: Kotlin (Koin, Kodein) ё Java (Dagger2).
- Андозаи лоиҳа: Барои лоиҳаҳои калон, Dagger2/Hilt ба сабаби санҷиши статикан беҳтар аст.
- Талаботи иҷроиш: Dagger2/Hilt, одатан, дар вақти иҷроӣ тезтар мебошанд.
- Таҷрибаи гурӯҳ: Агар гурӯҳ аллакай бо китобхонае кор кардааст, ин метавонад суръат бахшад.
Дар ҳолати идеалӣ, ман кӯшиш мекунам, ки Hilt-ро ҳамчун муносибати тавсияшуда барои лоиҳаҳои нав Android, ки Jetpack-ро истифода мебаранд, истифода кунам.