Butterknife与AndroidAnnotations对比

22

我正在考虑在我的应用程序中使用Dagger。我还想使用一个视图注入库,它可以为我节省编写代码的时间并提供大量功能,但另一方面它不应该太大并且在性能方面不应该过于昂贵。

AndroidAnnotationsButterknife之间有什么主要差异吗?


发布了链接以明确。 - AdrianoCelentano
19
为什么这个问题被标记为“基于观点的”?所有技术性回答都有一定的观点。帮助某人选择框架的指南当然不会偏离 Stack Overflow 的主题吧?唉。 - RichieHH
1个回答

37
如果你只是想通过注入视图(或设置点击监听器)来减少应用程序中的样板代码,那么可以从 Butterknife 开始。它速度快、体积小、使用简单,旨在注入视图、监听器和其他 UI 相关对象。 如果你想要注入更多的东西,如系统服务,或强制方法在后台或UI线程中运行,或注入动画等资源,你应该选择 AndroidAnnotations。唯一的小缺点是,对于每个要增强的类,都会生成一个带有相同名称加上“_”结尾的新类。因此,在调用活动或创建片段时,您将不得不习惯使用这些名称。如果这对你来说不是问题,那就直接使用吧。这两个库都会生成代码,因此你不应该在运行时面临性能损失。 Dagger 不适用于视图注入。它允许你更好地组织代码,并定义不同组件之间可注入的依赖关系。如果你掌握了它,它非常强大,但不能替代 Butterknife

我刚才提到了Dagger,因为我不确定它的兼容性。 之前我使用的是Roboguice,现在我需要切换,因为它与Android注释不兼容。 - AdrianoCelentano

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接