gpt4 book ai didi

java - 为什么 Java 或 Android 中的单例类需要依赖注入(inject)?

转载 作者:行者123 更新时间:2023-12-01 21:37:08 27 4
gpt4 key购买 nike

例如,如果我使用 Dagger 注入(inject) (Otto)Bus 对象,那么我必须编写更多行代码来指定在界面中的多少位置注入(inject)它。

另一方面,如果我只使用单例类来返回 Bus 实例,那么我不需要编写与依赖注入(inject)时所需的代码行一样多的代码。

所以我的问题是“为什么或者如何更好地使用依赖注入(inject)来注入(inject) Singleton 类实例?”

最佳答案

首先,DI 将减少您为设置具有所需依赖项的实例而必须调用的样板文件数量。更少的代码意味着更高的可读性。为此付出的代价是所涉及的配置,但是,对于大型项目来说,这是值得的。

其次,当您在应用上运行自动化测试时,您可以从 DI 中受益。您将能够用模拟替换标准单例实现,您可以控制和使用模拟来模拟覆盖所有情况所需的不同场景。

话虽如此,我也认为 DI 只适合大型 Android 项目,或者中大型 EE 项目。否则,恕我直言,它会增加一些不必要的复杂性。

关于java - 为什么 Java 或 Android 中的单例类需要依赖注入(inject)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36843757/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com