首页 > 技术文章 > 设计模式的原则

wangkeqin 2019-07-23 10:27 原文

设计模式学习的建议-GOF给我们的建议:

1 针对接口编程

2 优先使用组合,而不是继承(Favor Composition Over Inheritance)

3 找到封装变化点

 

设计模式的原则

1-开闭原则

1.1定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭

1.2问题由来:
在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试 
1.3解决方案:
当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。

2-依赖倒置原则

2.1定义:

高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象 
2.2问题由来:

 

2.3解决方案

 

3-里氏替换原则

 里氏替换原则通俗的来讲就是:子类可以扩展父类的功能,但不能改变父类原有的
功能。它包含以下 2 层含义:
1)子类中可以增加自己特有的方法。
2)子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法

 

 

推荐阅读