此问题在此处已有答案:
Where exactly is the difference between IoC and DI [duplicate](2个答案)
1小时前关闭。
我试图找到一个适当的解释之间的差异依赖倒置,DI和IoC和阅读许多文章,以了解如下的区别:
Inversion of Control vs Dependency Injection
https://betterprogramming.pub/straightforward-simple-dependency-inversion-vs-dependency-injection-7d8c0d0ed28e
然而,当我读到关于这个问题的新文章和SO上的答案时,我变得更加困惑了。因为,在Spring文档中,还有下面的IoC子句:
IoC也称为依赖注入(DI)
那么,你能简单解释一下依赖反转、依赖注入和控制反转之间的区别吗?
1条答案
按热度按时间whlutmcx1#
依赖注入(DI)是一种避免类之间强耦合的设计实践。
它被认为是依赖注入,因为ib可以是实现这个接口的任何东西。当你想测试类A时,你不需要示例化IB,或者你可以用你想要的任何东西示例化它。底线是,类A并不强烈依赖于ib(或类B)
Inversion of Control(IoC)是一个概念,开发人员将示例化控制权交给框架(例如Spring)。因此,在编写良好的代码中,您不会看到构造函数的显式调用,因为框架会为您执行这些操作。IoC使用DI设计实践。
如果您需要更好的说明,请告诉我