设计模式简介
设计模式代表了软件开发人员总结解决问题的心血和结晶,一种解决实际问题的“套路”。一种被反复使用的,多数人知晓的,经过分类编目的,代码设计经验的总结。它能够重用代码,让代码易理解,保证可靠。
1994年苏黎世大学计算机科学博士艾瑞克伽马,墨尔本大学计算机科学博士理查德郝尔姆,康奈尔大学计算机科学博士拉尔夫约翰森,斯坦福大学计算机科学博士威利斯斯利(05年12月去世)。四人共同编写了《Design Patterns》这本书中文名是《设计模式》世人称GOF(Gang of Four),中文:四人帮。1995年开始出版。至今过去23年,经典无比。是oo信徒的圣经。
原则
该书讲的是思想,接口和抽象类灵活应用的智慧。他反复强调的是使你的程序能够可重用。
软件项目中需求复杂,变化多端,所以设计的时候一定要遵循他的最重要的三大原则(其实有6大原则)在我看来总结到底就是:
- 把变化的部分抽取出来并封装起来,不要和不需要变化的代码混合在一起
- 针对接口编程
- 多用组合少用继承
设计模式的分类
##创建型模式5种##
1. 工厂方法模式
2. 抽象工厂模式
3. 单例模式
4. 建造者模式
5. 原型模式
## 结构模式7种 ##
6. 适配器模式
7. 装饰器模式
8. 代理模式
9. 外观模式
10. 桥接模式
11. 组合模式
12. 享元模式
## 行为模式11种 ##
13. 策略模式
14. 模板方法模式
15. 观察者模式
16. 迭代模式
17. 责任链模式
18. 命令模式
19. 备忘录模式
20. 状态模式
21. 访问者模式
22. 中介模式
23. 解释器模式
总结
写这篇文章是为了能够对平时工作的总结和回顾,以不在重复工作和浪费时间。另外是对自己理解的加深,网上有很多介绍设计模式,但是自己写还是为了能够加深对软件工程的理解。就像一个王者和一个青铜,为什么王者技术牛逼呢,一对游戏英雄的独到理解,二对意识的理解(在我这里是直觉,专家级可以通过它的直觉来指出问题的来源)。下一篇就是各个设计模式的介绍和理解。
转载自原文链接, 如需删除请联系管理员。
原文链接:OO圣经的解读,转载请注明来源!