依赖倒置原则(DIP):一种软件架构设计的原则(抽象概念)。
控制反转(IoC):一种反转流、依赖和接口的方式(DIP的具体实现方式)。通俗地说,就是应用程序本身不负责依赖对象的创建和维护,而是将它交给一个外部容器(比如Spring)来负责,这样控制权就由应用程序转移到了外部IoC 容器,即控制权实现了所谓的反转。
依赖注入(DI):IoC的一种实现方式,用来反转依赖(IoC的具体实现方式)。比如我们如何实现控制反转,答案就是通过依赖注入去实现。
IoC容器:依赖注入的框架,用来映射依赖,管理对象创建和生存周期(DI框架),自动创建、维护依赖对象。
关于Ioc容器,各个语言都有自己的成熟的解决方案,比如Java框架 Spring,.net 中轻量级的Autofac等。在DDD领域驱动设计的应用架构中, 有使用到DIP 设计模式。



