Dependency injection 什么是“手动依赖注入”?
我经常在国际奥委会框架中读到这句话 在他们的示例中,他们基本上有一个代码序列,在其中他们创建一组对象,连接它们,等等,然后做一些事情Dependency injection 什么是“手动依赖注入”?,dependency-injection,Dependency Injection,我经常在国际奥委会框架中读到这句话 在他们的示例中,他们基本上有一个代码序列,在其中他们创建一组对象,连接它们,等等,然后做一些事情 我不明白的是,当您遵循面向对象编程的原则时,为什么需要这个序列?简单地说,依赖注入是一个概念。 经典的OOP对象解析它们自己的依赖关系并对它们进行管理。因此,一个经典的课程需要带来关于它的环境的知识,而这对于它的真正原因是不必要的。依赖项注入传递了创建和链接到独立实例的责任,如果存在大量的类,那么这样可以更容易地维护代码 但你是对的——最后,如果有什么东西需要实现
我不明白的是,当您遵循面向对象编程的原则时,为什么需要这个序列?简单地说,依赖注入是一个概念。 经典的OOP对象解析它们自己的依赖关系并对它们进行管理。因此,一个经典的课程需要带来关于它的环境的知识,而这对于它的真正原因是不必要的。依赖项注入传递了创建和链接到独立实例的责任,如果存在大量的类,那么这样可以更容易地维护代码
但你是对的——最后,如果有什么东西需要实现,并且在类中创建对象所需的时间已经结束了——遵循面向对象编程的原则确定了这项工作,并提供实例来管理这项工作。我认为经典类遵循单一责任原则?它可以,但这里有一个不同的原理:DIP。类可以遵循SRP,同时仍然将自身与其依赖项紧密耦合。SRP影响一个班级可能有哪些合作者;DIP会影响班级获得这些合作者的方式。依赖项注入只是一种跟踪DIP时使用的技术。