我是MVVM体系结构的新手,我在互联网上找到的每个文档都将Dagger与MVVM体系结构一起使用。 Dagger对我来说风格模糊,在我看来,创建一个Android应用程序过于复杂。所以我的问题很简单:
答案 0 :(得分:1)
我不同意那些说匕首只是图书馆的人。
Dependency Injection :是一种概念和编码方式,而匕首使利用批注的依赖项注入更加容易。
Google的Sun-Flower项目在使用MVVM模式时也没有使用匕首。
答案 1 :(得分:0)
您不需要在MVVM架构或MVP架构中使用Dagger-Dagger只是一个依赖注入程序库。您可以立即在Kotlin中使用延迟加载,也可以使用Koin代替Dagger。架构模式不依赖Dagger。
答案 2 :(得分:0)
依赖注入只是一个想法。
Dagger2是一个使用注释处理来帮助依赖注入样板的库。
甚至Jake Wharton都说Dagger2对于较小的应用程序可能会显得过大。
在没有DI框架的情况下开发MVVM应用程序绝对是可能的。从技术上讲,您根本不需要 DI,但这确实会使事情变得容易,尤其是在测试方面。