JAVA设计模式-依赖倒转原则

原创 2016年05月30日 13:52:48

依赖倒转原则:应该面向接口编程,而不是面向实现编程。首先先设计接口,将这个模块变成单一职责的高内聚形式。
A高层模块不应该依赖底层模块,两个都应该依赖抽象。
注:高层是高级的抽象,将必要的方法和参数进行整合,而低级的模块依赖高级模块的同时(继承或者接入接口)也直接的依赖了抽象,而且还需要在高阶的抽象下进行一些实现。
B抽象不应该依赖于细节,细节应该依赖于抽象。
注:细节主要在子类中对父类的方法进行实现,那么如果,对子类在实现上,想的过多,那么必然会影响对父类的抽象。那么就没有做到要求的抽象。而细节依赖于抽象时,就不会因为在设计父类时因为涉及到了实现,而弱化了抽象。细节应该在抽象之后,在具体实现的子类下完成。

补充:
里氏替换原则:一个软件实体如果使用一个父类的话,那么一定适用于其子类,而且它察觉不出父类对象和子类对象的区别。也就是说,在软件里面,把父类替换成它的子类,程序的行为没有变化。
子类型必须能够替换掉他们的父类型。

依赖倒转,他们只依赖于抽象接口和抽象类。 那么就可以更好的进行增加和减少功能。

重点:依赖倒转其实可以说是面向对象设计的标志,用那种语言来写程序不重要,如果编写的时候考虑的都是如何针对抽象变成而不是针对细节编程,即程序中所有的依赖关系都终止于抽象类或者接口,那就是面向对象的设计,反之那就是过程化的设计了。

JAVA设原则之依赖倒置原则

JAVA设原则之依赖倒置原则本博客大部分内容来自于网络,写下来方便以后查阅1.什么是依赖倒置原则 简单来说 A.高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。 ...
  • wzlyd1
  • wzlyd1
  • 2016年03月24日 15:23
  • 1366

依赖倒置原则详解--七大面向对象设计原则(3)

依赖倒置原则来源:          类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是低层模块,负责基本的...
  • fanyun_01
  • fanyun_01
  • 2016年07月15日 19:26
  • 1587

六大设计原则之依赖倒置原则

依赖倒置原则定义依赖倒置原则(Dependence Inversion Principle ,DIP)定义如下:High level modules should not depend upon lo...
  • hfreeman2008
  • hfreeman2008
  • 2016年08月23日 11:42
  • 971

面向对象设计原则--里氏替换原则(LSP)和依赖倒置原则(DIP)

面向对象设计原则–里氏替换原则(LSP)和依赖倒置原则(DIP)tags:设计模式 LSP–inheritance should ensure that any property proved a...
  • qq_22841811
  • qq_22841811
  • 2016年09月29日 23:18
  • 248

设计模式--依赖倒转原则

依赖倒转原则又称依赖倒置原则: 抽象不应该依赖细节,细节应该依赖于抽象。说白了,就是针对接口编程,不要针对实现编程。 依赖倒置原则包含三层含义: 1)高层模块不应该依赖低层模块,两者都应该...
  • u014034854
  • u014034854
  • 2015年07月06日 09:37
  • 853

面向对象六大原则----里氏替换原则,依赖倒置原则

Java 中面向对象编程六大原则: 单一职责原则 英文名称是Single Responsibility Principle,简称SRP 开闭原则 英文全称是Open Close Principl...
  • Jo__yang
  • Jo__yang
  • 2016年07月29日 17:05
  • 2282

依赖倒置原则之我见

依赖倒置原则(Dependence Inversion Principle),简称DIP。 定义:High level modules should not depend upon low le...
  • imyfriend
  • imyfriend
  • 2013年02月11日 18:05
  • 5309

大话设计模式之依赖倒转原则

大话设计模式 六大原则:依赖倒转原则
  • u010540106
  • u010540106
  • 2014年06月03日 17:29
  • 1656

设计模式六大原则之--依赖倒置原则(DIP)

1. 依赖倒置原则,(Dependence Inversion Principle, DIP ) 定义:High level modules should not depend upon low...
  • benbenxiongyuan
  • benbenxiongyuan
  • 2014年04月18日 11:07
  • 1652

设计原则(四)依赖倒置原则(DIP)

一、什么是依赖倒置原则一种表述: 抽象不应当依赖于细节;细节应当依赖于抽象。另一种表述: 要针对接口编程,不要针对实现编程。针对接口编程的意思就是说,应当使用Java接口和抽象Java类进行变量的...
  • xingjiarong
  • xingjiarong
  • 2015年11月29日 12:11
  • 2135
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA设计模式-依赖倒转原则
举报原因:
原因补充:

(最多只允许输入30个字)