Java设计模式-1、什么是设计模式-2、七大原则
设计模式1
第1章:什么是设计模式
设计模式:是在特定环境下为解决某一通用软件设计问题提供的一套定制的解决方案,该方案描述了对象和类之间的关系。
基本要素:
- 模式名称
- 问题
- 解决方案
- 效果
第2章:七大设计原则
单一职责原则:
一个对象应该只包含单一的职责,并且该职责被完整的封装在一个类中。
- DBUtil:负责连接数据库,包含数据库连接方法getConnection();
- CustomerDAO:负责操作数据库中的Customer表,包含对Customer表的增删改查等方法,如findCustomers();
- CustomerDataChart:负责图表的生成和显示,包含方法createChart()和displayChart()。
开闭原则:
软件实体应该对扩展开放,对修改关闭。
使用开闭原则重构后:
如果需要增加一种新的图表,如折线图LineChart,只需要将LineChart也作为AbstractChart的子类,在客户端向ChartDisplay中注入一个LineChart对象即可,无须修改现类库的源代码。
里氏替换原则:
所有引用基类的地方必须能透明的引用其子类的对象。
使用里氏替换原则重构后:
依赖倒转原则:
高层模块不应该依赖低层模块,二者都应该依赖其抽象,抽象不应该依赖于细节,细节应该依赖于抽象。
使用依赖倒转重构后:
接口隔离原则:
客户端不应该依赖它不需要的接口,即一个类对另一个类的依赖应该建立在最小的接口上。
使用接口隔离重构后:
合成复用原则:
优先使用对象组合,而不是通过继承来达到复用的目的。
使用合成复用重构后:
迪米特法则:
一个对象应该对其他对象保持最少的了解。
使用迪米特法则重构后:
一个对象应该对其他对象保持最少的了解。
[外链图片转存中…(img-yfqd7Tys-1604491914885)]
使用迪米特法则重构后: