1.设计模式目标
使用分解和抽象来管理变化,提高复用
2.设计模式的原则
3.重构技巧
静态->动态;早绑定->晚绑定;继承->组合;编译时依赖->运行时依赖;紧耦合->松耦合。
4.c++对象模型
设计模式常常是第三个对象模型。
5.什么时候不用设计模式
- 代码可读性很差
读马丁弗勒的重构那本书能知道自己代码好还是坏,然后多看看第三方标准类库。变量命名,函数调用,类的划分等等
- 需求理解还很浅
先写出最初的版本写出来,不要先使用设计模式。第二第三版慢慢的就融入了设计模式
-
变化没有显现
-
不是系统的关键依赖点
不是系统的关键模块关键地方就尽量少用
- 项目没有复用价值
外包公司项目常常没有复用,项目重新开发的类似公司复用性更高。
- 项目将要发布
6.经验之谈
-
不要为模式而模式
-
关注抽象类和接口
写抽象类的人往往比写基础代码(子类)的人能力、薪资以及对代码的理解能力更强。
-
理清变化点和稳定点
-
审视依赖关系
-
要有Framework和Application的区隔思维
-
良好的设计是演化的结果,不是一步到位的
7.设计模式成长之路
- 见模式而而不知
- 可以识别模式,作为应用开发人员使用模式
- 作为框架开发人员为应用设计某些模式
- 忘掉模式,只有原则