面向对象的设计原则

2019-04-08  本文已影响0人  简书帅气的昵称已被使用

一、开闭原则

开闭原则(Open Closed Principle, OCP)
对象:软件实体
原则:对扩展开放,对修改关闭

1、软件实体包括部分:

2、开闭原则的作用

使软件实体拥有一定的适应性和灵活性的同时具备稳定性和延续性

3、开闭原则的实现方法

抽象约束、封装变化

二、里氏替换原则

里氏替换是继承复用的基础,它反应了基类与子类之间的关系,是对开闭原则的补充,是对实现抽象化的具体步骤的规范

1、里氏替换原则的实现方法

子类可以扩展父类的功能,但不能改变父类原有的功能。子类继承父类时,除添加新的方法完成新增功能外,尽量不要重写父类的方法

三、依赖倒置原则

高层模块不应该依赖低层模块,两者都应该依赖其抽象;抽象不应该依赖细节,细节应该依赖抽象

1、依赖倒置原则的作用

2、依赖倒置原则的实现方法

依赖倒置原则的目的是通过面向接口的编程来降低类间的耦合性

四、单一职责原则

单一职责原则规定一个类应该有且仅有一个引起它变化的原因,否则类应该被拆分

1、单一职责原则的优点

单一职责原则的核心就是控制类的粒度大小、将对象解耦、提高其内聚性

2、单一职责原则的实现方法

将类的不同职责分离,再封装到不同的类或模块

五、接口隔离原则

一个类对另一个类的依赖应该建立在最小的接口上

  接口隔离原则和单一职责都是为了提高类的内聚性、降低它们之间的耦合性,体现了封装的思想,两者的不同在于:
1、单一职责原则注重的是职责,而接口隔离原则注重的是对接口依赖的隔离
2、单一职责原则主要是约束类,它针对的是程序中的实现和细节,接口隔离原则主要约束接口,主要针对抽象和程序整体框架的构建

1、接口隔离原则的优点

接口隔离原则是为了约束接口、降低类对接口的依赖性

2、接口隔离原则的实现方法

六、迪米特法则

又称最少知识原则
如果两个软件实体无须直接通信,那么就不应当发生直接的相互调用,可以通过第三方转发该调用
目的:降低类之间的耦合度,提高模块的相对独立性

1、迪米特法则的优点

2、迪米特法则的实现方法

七、合成复用原则

又称组合/聚合复用原则(Composition/Aggregate Reuse Principle, CARP)

1、合成复用原则的重要性

上一篇 下一篇

猜你喜欢

热点阅读