• 控制反转(IOC)和依赖注入(DI)


          开始用依赖注入时,以为控制反转和依赖注入是同一件事,经过查找资料才发现,之前自己的理解是错的。

          控制反转是把对组件/对象的控制权进行转移,由原来代码控制转移给容器。

          比如:

          以前在使用接口的方法时通过实例化对象IA a=new A();来调用接口IA的方法。而用DI时,不需要知道接口的实现,只需要提供该接口给容器,由容器去查找该接口的实现,这样就将原来代码本身的控制权交给了容器。

         依赖注入是将接口与实现的对应关系注册到容器中,当使用时只需知道接口。这样在调用时就只依赖于抽象类,而不是具体类,从而达到了解耦的效果。依赖注入其实是一种实现IOC模式的模式,即DI实现IOC的一种方式。

        依赖倒置原则就是高层模块不应该依赖于低层模块,他们都应该依赖于抽象;抽象不应该依赖于具体实现,具体实现应该依赖于抽象。

                                                                                                                                                                              仅个人理解

  • 相关阅读:
    OO设计精要:封装,还是封装(有感于“Why getter and setter methods are evil ”by Allen Holub )
    博客园建议:能否记住在博客园的首页上只显示标题
    戴尔国际英语
    C#代码契约(转)
    C#数组传递和返回
    SecureString
    里氏替换原则
    ASP.NET的Cache(转)
    WCF服务
    C#枚举中的位运算权限分配
  • 原文地址:https://www.cnblogs.com/wmj01/p/5301659.html
Copyright © 2020-2023  润新知