开篇-模式和原则

开篇-模式和原则

ID:40309191

大小:348.00 KB

页数:16页

时间:2019-07-30

开篇-模式和原则_第1页
开篇-模式和原则_第2页
开篇-模式和原则_第3页
开篇-模式和原则_第4页
开篇-模式和原则_第5页
资源描述:

《开篇-模式和原则》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、设计模式随笔系列:开篇-模式和原则开篇-模式和原则前言正式接触使用设计模式近两年了,一直想写点东西来巩固所学,但是迟迟没有动作,总想时间和见识再多一些的时候再动笔,但是拖得越久越感觉合适的时机永远不会有,只有不断实践才能换来进步,也许再不写就永远也写不出来了,于是我终于开始了。谈到设计模式,应该还没有人能超越GOF的开山之作,所以谈不上什么创新,归根结底还是重复前人的论述和思想,更多的只能是整理和个人的一些心得体会。因为从设计模式诞生以来,业界还是发生了很大的变化的,开发工具和开发过程已经更新换代了很多次,所以很多模式在现在已经不是很常用了,所以这次的计划中,只重

2、点介绍最流行的模式,以后会逐渐补充其它的模式。(参看下面的提纲)这个系列计划以《HeadFirstDesignPatterns》的结构为主线,也可以说是这本书的学习笔记,但是更多的是学习原书循序渐进的讲解方式,再争取加入更多个人的思想和见解,希望最后能引起大家的共鸣。园子里已经有好几位大侠和前辈写过设计模式系列的文章了,我从他们那曾经吸收了太多的精华,大恩不言谢,我这里还是谢过了。提纲下面是这个系列的提纲初稿,将来会根据实际情况做适当的增删。 开篇-模式和原则1.      鸭子-策略模式2.      气象站的故事-观察者模式3.      来杯咖啡-装饰者模式

3、4.      美味比萨-工厂模式5.      巧克力-单件模式6.      遥控器-命令模式7.      家庭剧院-适配器和门面模式8.      好莱坞原则-模板方法模式9.      餐厅菜单-迭代器和合成模式10.  糖果机-状态模式11.  首席代表-代理模式12.  鸭子重出江湖-复合使用模式13.  用模式思考-与模式相处14.  剩下的模式设计模式介绍模式:每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这是关于模式最经典的定义,作者是建筑大师ChristopherAlexander。如果是第一次看到这句话,多数

4、人会觉得有些抽象难懂。其实“模式”两个字只是一个代号,就像我叫Justin,如果我改叫Tom也没什么问题,只是我更喜欢Justin这个名字,所以从Christopher开始,有了“模式”这个词,人们也都把关于“重复发生的问题的描述和解决办法”统称为模式。“模式”这个词是不局限于软件开发行业的,它几乎无处不在,它其实就是一种经验的积累,就象大多数人的教育经历都是从小学到初中再到高中再到大学,这也是一种模式,是中国的教育模式;现在越来越火的出国热,也是另一种模式,海外留学模式。因为GOF的《设计模式:可复用面向对象软件的基础》一书描述的23种经典设计模式,奠定了模式在

5、软件行业的地位,从此人们提到“设计模式”就是默指“面向对象设计模式”,但是如前文所述,模式绝对不局限于软件行业,即使在软件行业,也不局限于GOF描述的23种设计模式,例如最著名的MartinFlower的《企业架构模式》,还有我们常用的MVC、IOC等。[说到这里,有必要声明一下的是,在该系列文章中,凡提到模式,都是指软件行业的基于GOF的《设计模式:可复用面向对象软件的基础》一书的面向对象设计模式,GRASP模式除外。]因为模式是一种经验的积累和总结,所以通过模式,我们可以站在巨人的肩膀上去思考问题、解决问题,熟练使用设计模式可以提高我们的工作效率,改善产品质量

6、,最终带来经济效益。因此对于任何想开发出灵活高效、健壮的软件产品的个人或团体,熟练掌握并正确使用设计模式都是必须掌握的基本技能。所以,让我们开始吧……比设计模式更重要:GRASP(职责分配原则)要学习设计模式,有些基础知识是我们必须要先知道的,设计模式是关于类和对象的一种高效、灵活的使用方式,也就是说,必须先有类和对象,才能有设计模式的用武之地,否则一切都是空谈,那么类和对象是从那冒出来的呢?这时就需要比23种设计模式更重要更经典的GRASP模式登场了,嘿嘿,原来这才是老大!GRASP(GeneralResponsibilityAssignmentSoftware

7、Patterns),中文名称为“通用职责分配软件模式”,GRASP一共包括9种模式,它们描述了对象设计和职责分配的基本原则。也就是说,如何把现实世界的业务功能抽象成对象,如何决定一个系统有多少对象,每个对象都包括什么职责,GRASP模式给出了最基本的指导原则。初学者应该尽快掌握、理解这些原则,因为这是如何设计一个面向对象系统的基础。可以说,GRASP是学习使用设计模式的基础。1.     InformationExpert(信息专家)信息专家模式是面向对象设计的最基本原则,是我们平时使用最多,应该跟我们的思想融为一体的原则。也就是说,我们设计对象(类)的时候,如果

8、某个类拥有

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。