spa*_*pam 45 java spring guice dagger-2
据我所知,Dagger确实生成了代码,而Guice和Spring依赖于运行时处理,因此Dagger的工作速度更快,但需要在程序员方面做更多的工作.由于性能优势,它对移动(Android)开发很有好处.
然而,当我们离开Guice和Spring时,后者有很多集成.如果我们可以使用Spring Framework(基本上做同样的事情,但提供更简单的数据库访问),那么开发/使用Guice有什么意义呢?
谷歌是不是试图通过创建自己的DI工具来重新发明轮子,而不是使用(并可能有助于)Spring Framework?
我正在寻找决策树,通过选择DI工具来指导.
Jef*_*ica 123
重要的是要意识到Dagger是在Guice之后创建的,由Guice的创作者之一("Crazy Bob"Lee)移居广场:
javax.inject
于2009年10月正式化注释,得到了Google(Bob Lee),Spring和其他业内人士的大量投入.从这个意义上讲,Guice的持续策划并不是"重新发明轮子",而是对长期运行且广泛使用的软件包进行维护,这种软件包完全超越任何版本的Dagger.您可能会认为Dagger是Guice的精神继承者,但只提供Guice功能的优化子集.
列出并修改您上面的差异:
除此之外,请密切关注您使用的任何框架中的维护/弃用模式和策略.根据您的团队的知识和经验,您对反射或运行时配置的需求,以及您对集成和运行时性能的需求,您可能会看到以上其中一项脱颖而出.也就是说,还有其他框架,所以要留意上面的新选项和分叉.
归档时间: |
|
查看次数: |
22275 次 |
最近记录: |