依赖注入简单解释
参考链接:https://www.cnblogs.com/liuhaorain/p/3747470.html
参考详细链接:https://www.cnblogs.com/atomy/p/12516304.html
一:依赖倒置原则(DIP)
高层模块不依赖于低层模块的实现,而低层模块依赖于高层模块定义的接口 即就是高层模块定义接口,低层模块负责实现
例子:ATM机 :高层模块 ,各个银行卡:底层模块
IClass class = new CbClass();
var class = Factory.CreateClass();
二 :控制反转(IOC)
它为相互依赖的组件提供抽象,将依赖(低层模块)对象的获得交给第三方(系统)来控制,即依赖对象不在被依赖模块的类中直接通过new来获取
例子:订单操作:对应各种数据库 sqlserver mysql orcal等
三:依赖注入(DI)
将需要依赖(低层模块)对象的引用传递给被依赖(高层模块)对象
注入方式:构造函数,属性注入,接口注入
例子:订单 注入各种数据库
四: 注入容器(IOC 容器)
. 容器:Autofac,Ninject。。。。