android - Activity 和 Fragments (Android) 中的样板代码是什么?
问题描述
dagger-android 背后的想法是减少注入对象所需的样板。更具体地说,这个想法是减少片段、活动或任何其他由操作系统实例化的 Android 框架类中的样板代码。关联
那么,在这里,当我制作粗体文本时,android 中的样板代码是什么以及 dagger2 如何减少它?
解决方案
我认为你弄错了 Dagger 并不意味着删除样板代码(它在某种程度上确实如此,但它肯定不是为此目的而构建的)。这就是库所服务的,它执行所有繁重的工作,并为我们提供了更简单的方法来实现该功能。
匕首提供的功能是依赖倒置原则,它的D
来源SOLID principle
。Dagger 是一个依赖注入框架,它负责提供依赖关系,作用域提供了它的注释库,因此它的运行时安全。它维护整个应用程序的依赖关系图,我们在模块中提供依赖关系,并根据需要注入它们。这就是它所做的一切所以是的,现在你不必在 Activity/Fragment 中创建对象,如果你注入它们,如果这就是你所说的样板,那么你将不再需要它。但 IMO 它不是样板。依赖倒置原则 也使得以 TDD 方式编写代码更容易。
如果您不想使用 Dagger,您可以构建自己的 DI 模块,但为什么呢?
推荐阅读
- random - 如何在networkx 2.1中生成一个完全连接的有向随机图?
- php - 如何在返回 false 之前回显所有内容?
- django - Django 详细视图和更新文件字段
- codenameone - CN1中如何避免拖拽痕迹
- postgresql - 使用 Anorm 执行更新返回 PSQLException:列索引超出范围:2,列数:1
- c# - 如何在 C# 项目中为 WPF 应用程序创建云数据库
- node.js - Node.js - 如何将缓冲区转换为文件或 blob
- pandas - 条形图 matplotlib 中类别的颜色
- android - 如何指示等待改造响应的测试?
- c - 它是一种在c语言中挂起相同类型信号的方法吗?