如果不总是使用所有依赖项,如何应用依赖注入?

时间:2018-05-14 15:22:14

标签: dependency-injection dependencies logic code-injection

我想了解DI。既然我还没有编写单元测试,那么对我来说最大的优势就是类的解耦和依赖的管理/控制。

但是还有一个问题:如果我有一个A类(控制器),实例化B类(一个监听器),B类将在某些情况下实例化C类(邮件程序)怎么办? / p>

根据DI原则,我必须创建C并将其传递给B.如果我在请求期间不需要C,该怎么办?我是否必须首先为依赖注入创建一些逻辑?

1 个答案:

答案 0 :(得分:1)

  

根据DI原则,我必须创建C并将其传递给B.如果我在请求期间不需要C,该怎么办?我是否必须首先为依赖注入创建一些逻辑?

这不应该是一个问题,因为injection constructors should be simple

  

注入构造函数应该只接收依赖项。

执行此操作时,对象创建速度非常快reliable,并且消费者是否始终使用其所有依赖关系并不重要。