文章首发于:clawhub.club


简单介绍

  • 依赖倒置:Dependency Inversion Principle(DIP) 依赖倒置原则,高层模块不应该依赖于低层模块。两者都应该依赖于抽象。抽象不应该取决于细节。细节应该取决于抽象。
  • 控制反转:Inversion of Control(IoC)控制反转,是面向对象编程的一种原则,用来降低代码之间的耦合度,由外部的容器提供组件,由主动获取变为被动。
  • 依赖注入:Dependency Injection(DI)依赖注入,将依赖实例注入到高层模块,是实现IoC的一种方式。

关系梳理

依赖倒置是设计原则可以降低模块之间的耦合。
IoC是设计模式,可以遵守依赖倒置原则。
DI是实现IoC的一种方式,还有其他的方式,比如:依赖查找等。
依赖倒置、控制反转、依赖注入之间的关系

参考资料
轻松学,浅析依赖倒置(DIP)、控制反转(IOC)和依赖注入(DI)
浅谈面向对象五大原则 S.O.L.I.D