读<设计模式之禅>之前言
2012-04-03 09:14
127 查看
0.设计模式是什么?
它是一套理论,由软件界的先辈们总结出的一套可以反复使用的经验,它可以提高代码的可重用性,增强系统的可维护性,以及解决一系列的复杂问题。(软件的难处是如何把握需求的变更,变更不可控,只能拥抱变化)。设计模式给出了指导,专家首先提出了6大设计原则。
设计模式是对面向对象思想的深刻理解,对软件设计方法和编码经验的完美总结。
但“6大原则”——口号,而“23种设计模式”——真正付诸实践的详尽的指导方法。
1.为什么要设计模式?
国人有不破不立的思维(远如秦始皇焚坑儒、项羽火烧阿房宫,近如破“四旧”),正是由于有了这样的思想,于是乎能改的就改,不能改的就推翻重写,没有一个持续开发蓝图。
作为架构师,你不能持续地拥抱变化,这是一个系统最失败的地方。如何拥抱变化?设计模式!
2.掌握设计模式有什么好处?
如果通晓这23种设计模式,就可以站在一个更高的层次去赏析程序代码、软件设计、架构,完成从代码工人到架构师的蜕变。
3.如何掌握设计模式?
通晓:不是简单的把23种设计模式的含义、适应性、优缺点 都搞清楚就算;
而是要:有工作经验的积累 才可能 直正理解 设计模式
4.层次读者
程序员:写如更加高效、优雅的代码;
架构师:设计出健壮、稳定、高效的系统, 并且自动地预防未来业务变化可能对系统带来的影响;
项目经理:大缩短工期、可以让项目团队成员快速地理解你的意图,最终的成果就是优质的项目:高可靠性、高稳定性、高效率 和 低维护成本。
它是一套理论,由软件界的先辈们总结出的一套可以反复使用的经验,它可以提高代码的可重用性,增强系统的可维护性,以及解决一系列的复杂问题。(软件的难处是如何把握需求的变更,变更不可控,只能拥抱变化)。设计模式给出了指导,专家首先提出了6大设计原则。
设计模式是对面向对象思想的深刻理解,对软件设计方法和编码经验的完美总结。
但“6大原则”——口号,而“23种设计模式”——真正付诸实践的详尽的指导方法。
1.为什么要设计模式?
国人有不破不立的思维(远如秦始皇焚坑儒、项羽火烧阿房宫,近如破“四旧”),正是由于有了这样的思想,于是乎能改的就改,不能改的就推翻重写,没有一个持续开发蓝图。
作为架构师,你不能持续地拥抱变化,这是一个系统最失败的地方。如何拥抱变化?设计模式!
2.掌握设计模式有什么好处?
如果通晓这23种设计模式,就可以站在一个更高的层次去赏析程序代码、软件设计、架构,完成从代码工人到架构师的蜕变。
3.如何掌握设计模式?
通晓:不是简单的把23种设计模式的含义、适应性、优缺点 都搞清楚就算;
而是要:有工作经验的积累 才可能 直正理解 设计模式
4.层次读者
程序员:写如更加高效、优雅的代码;
架构师:设计出健壮、稳定、高效的系统, 并且自动地预防未来业务变化可能对系统带来的影响;
项目经理:大缩短工期、可以让项目团队成员快速地理解你的意图,最终的成果就是优质的项目:高可靠性、高稳定性、高效率 和 低维护成本。
相关文章推荐
- 读<又拍网架构中的分库设计> 一文之知识解惑
- mysql insert一条记录(事务提交之前)怎样返回创建记录的主键id,last_insert_id(),selectkey && <select> 标签属性
- 读<<Java解惑>>后的碎嘴子(第二章)
- 读<<编写可读代码的艺术>>总结
- 读<jQuery 权威指南>[6]--实用工具函数
- 读<<零成本实现web自动化测试>>有感,第一章:自动化测试基础
- SoapUI使用注意事项——在<!CDATA>节点之前不要有空格
- 读<<Java解惑>>后的碎嘴子(第八章)
- 读<看透Spring MVC 源代码分析与实践>Tomcat笔记
- UVA 3708<数学题><在一个集合中挑选出与另外一个集合相同数量的点求两者之前的差的绝对值最小>
- <<High Performance JavaScript>>读书笔记-10.Tools
- 网络编程(转)&lt;上&gt;
- web.xml中出现<servlet-name>default</servlet-name>是什么意思?
- 从零开始学android<第一个android 永远的helloworld.二.>
- [样式]针对<span>标签选前和选中后的状态改变
- &&和&,||和|总结,<<和>>位运算符总结
- 指尖上的代码[C语言版]-<5>
- 游戏月流水过亿的原因,浅谈<神魔之塔>
- Android Drawable Resources系列7:<inset>
- <fmt:formatNumber>和<fmt:formatDate>