依赖倒转原则

实现“开-闭”原则的关键是抽象化,并且从抽象化导出具体化实现。如果说“开-闭”原则是面向对象设计的目标,依赖原则就是面向对象设计的主要机制。
依赖倒转原则讲的是:要依赖于抽象,不要依赖于具体。

1.为何而“倒转”

为什么要使用“倒转”一词,依赖倒转(Dependence Inversion)的意义是什么?
简单地说,传统的过程性系统的设计方法倾向于高层模块依赖于底层模块:抽象层依赖于具体层。倒转原则是要这个错误的依赖关系倒转过来,这就是“依赖倒转原则”的由来。

2.复用与可维护性的“倒转”

“倒转”一词则是指复用应当将复用的重点放在抽象层次上。

3.依赖倒转原则

在面向对象的系统里,两个类之间可以发生三种不同的耦合关系:
零耦合(Nil Coupling)关系:如果两个类没有耦合关系,就称之为零耦合。
具体耦合(Concrete Coupling)关系:具体性耦合发生在两个具体(可实例化的)类之间,经由一个类对另一个具体类的直接引用造成。
抽象耦合(Abstract Coupling)关系:抽象耦合关系发生在一个具体类和一个抽象类(或者Java接口)之间,使两个必须发生关系的类之间存有最大的灵活性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值