程序员

浅谈设计模式的六大准则

2018-05-03  本文已影响0人  PersonChen_QJ

[设计模式六大原则]

1、单一职责原则(Single Responsibility Principle)

定义 : 一个类只负责一个功能领域中的相应职责,或者可以定义为:就一个类而言,应该只有一个引起它变化的原因。

原则 : 实现高内聚、低耦合的指导方针,它是最简单但又最难运用的原则,需要设计人员发现类的不同职责并将其分离,而发现类的多重职责需要设计人员具有较强的分析设计能力和相关实践经验。

注意 : 这里的类不光指类,也适用于方法和接口,比如我们常说的一个方法实现一个功能

2、里氏代换原则(Liskov Substitution Principle)

定义 : 只要父类出现的地方子类就一定可以出现,而且替换为子类也不会出现任何异常或错误,使用者不需要知道是父类还是子类.但是返回来就不行了,有子类出现的地方,
不一定能使用父类

使用规范 :

注意 : 采用里氏替换原则时,尽量避免子类的"个性",一旦子类有了"个性",子类和父类的关系就会变得不好调和

3、依赖倒置原则(Dependence Inversion Principle)

定义 : 依赖倒置原则包含三个含义

高层模块和低层模块比较好理解,每一个逻辑都是由原子逻辑组成的,不可分割的原子逻辑是低层模块,原子逻辑再组装就是高层模块;

抽象指的是接口或者抽象类,两者都不能直接实例化;

细节就是实现类,实现接口或继承抽象类而产生的类就是细节,其特点是可以被实例化;

依赖倒置原则在 Java 中的实现是表现是:

这也是面向接口编程的精髓之一

遵循的规则 :

4、接口隔离原则(Interface Segregation Principle)

我们先来看接口的定义 :

隔离的的理解 :

这个是开闭原则的基础,具体内容:针对接口编程,依赖于抽象而不依赖于具体。

接口隔离原则的约束条件 :

5、迪米特法则(Demeter Principle)

定义 : 迪米特法则也叫最少知识原则,含义是 一个对象应该对其他对象有最少的了解,这个应该很好理解,就是降低各模块之间的耦合

6、开闭原则(Open Close Principle)

定义 : 一个软件实体如类,模块和函数应该对扩展开放,对修改关闭,开闭原则也是其他五个原则的基石

上一篇下一篇

猜你喜欢

热点阅读