博客
关于我
依赖倒置(DIP),控制反转(IOC),依赖注入(DI)
阅读量:273 次
发布时间:2019-03-01

本文共 894 字,大约阅读时间需要 2 分钟。

什么是依赖?

依赖就是一种需要,例如再Dal层做数据处理,而在Bll层要做操作的话,首先要实例化Dal层,然后才能进行操作。这就是Bll层依赖于Dal层,Dal层被Bll层依赖

namespase DAL{   public class Operation   {      public int Add(){}      public int Delete(){}   }}//BLL层若想调用Dal层,首先要对Dal层添加引用,然后实例化Dal层,才能进行操作using DAL;namespace Bll{    public class Operation    {       Operation ope=new Operation();       public int Add()       {         ope.Add();       }     }}

什么是倒置?

面向对象语言程序设计时,高层模块不直接依赖低层模块,二者通过抽象来依赖。依赖抽象,而不依赖具体细节。以前高层直接依赖于低层,现在高层依赖于抽象,细节由第三方工厂决定

namespase IDAL{public inteface IOperation{int Add();int Delete();}}using IDAL;namespase DAL{   public class Operation:IOperation   {      public int Add(){}      public int Delete(){}   }}namespase Factory{ public IOperation GetFactiory(){   //反射}}//using DAL;namespace Bll{    public class Operation    {       IOperation ope=Factory.GetFactiory();       public int Add()       {         ope.Add();       }     }}

 

 

 

 

转载地址:http://bpua.baihongyu.com/

你可能感兴趣的文章
nativescript(angular2)——ListView组件
查看>>
NativeWindow_01
查看>>
Native方式运行Fabric(非Docker方式)
查看>>
Nature | 电子学“超构器件”, 从零基础到精通,收藏这篇就够了!
查看>>
Nature和Science同时报道,新疆出土四千年前遗骸完成DNA测序,证实并非移民而是土著...
查看>>
Nature封面:只低一毫米,时间也会变慢!叶军团队首次在毫米尺度验证广义相对论...
查看>>
Nat、端口映射、内网穿透有什么区别?
查看>>
Nat、端口映射、内网穿透有什么区别?
查看>>
nat打洞原理和实现
查看>>
NAT技术
查看>>
NAT模式/路由模式/全路由模式 (转)
查看>>
NAT模式下虚拟机centOs和主机ping不通解决方法
查看>>
NAT的两种模式SNAT和DNAT,到底有啥区别?
查看>>
NAT的全然分析及其UDP穿透的全然解决方式
查看>>
NAT类型与NAT模型详解
查看>>
NAT网络地址转换配置实战
查看>>
NAT网络地址转换配置详解
查看>>
navbar navbar-inverse 导航条设置颜色
查看>>
Navicat for MySQL 命令列 执行SQL语句 历史日志
查看>>
Navicat for MySQL 查看BLOB字段内容
查看>>