03-2设计模式概述.ppt

上传人:qwe****56 文档编号:69532779 上传时间:2023-01-06 格式:PPT 页数:15 大小:645.50KB
返回 下载 相关 举报
03-2设计模式概述.ppt_第1页
第1页 / 共15页
03-2设计模式概述.ppt_第2页
第2页 / 共15页
点击查看更多>>
资源描述

《03-2设计模式概述.ppt》由会员分享,可在线阅读,更多相关《03-2设计模式概述.ppt(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、设计模式概述设计模式概述设计模式概述设计模式概述刘刘 伟伟 weiliu_内内 容容y模式的定义y软件模式与设计模式y设计模式原则y设计模式关键元素y设计模式分类和描述什么是模式什么是模式 y模式之父美国加利佛尼亚大学环境结构中心研究所所长Christopher Alexander博士。yAlexander给出的模式经典定义是:每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心,通过这种方式,我们可以无数次地使用那些已有的解决方案,无需再重复相同的工作。y模式:A pattern is a solution to a problem in a context模式

2、是在特定环境中解决问题的一种方案。什么是模式(续)什么是模式(续)y从1990年开始,软件工程界开始关注这一住宅、公共建筑与城市规划领域的重大突破,最早将该思路引入软件工程方法学的是1991年至1992年以“四人组(Gang of Four,GoF,分别是Erich Gamma,Richard Helm,Ralph Johnson,John Vlissides)”自称的四位著名软件工程学者,他们在1994年归纳发表了23种设计模式,旨在用模式来统一沟通面向对象方法在分析、设计和实现间的鸿沟。什么是模式(续)什么是模式(续)问题描述环境/约束条件解 法关联解法效果/注意点副作用/局限性其它相关模

3、式软件模式与设计模式软件模式与设计模式 y软件模式是将“模式”的一般概念用于软件开发领域,即软件开发的总体指导思路或参照样板。软件模式并非仅限于“设计模式”,还有“体系结构模式”、“分析模式”、“过程模式”等,软件生存期的各个阶段都存在着被认同的模式。y可以认为软件模式是对软件开发这一特定“问题”的“解法”的某种统一表示,它和Alexander所描述的模式定义完全相同,即软件模式=一定状况下的问题+解法。软件模式的基础结构由4个部分构成:问题、前提条件、解法和使用结果。软件模式与设计模式(续)软件模式与设计模式(续)y下面是软件设计模式的一个简单发展史:01987年Cunningham 和 B

4、eck 借鉴 Alexander的思想开发出一门新的语言SmallTalk,这种语言里使用了一些小的模式。01990 年“四人组”(Erich Gamma,Richard Helm,Ralph Johnson,John Vlissides)开始着手进行设计模式的分类整理工作。01991 年 Bruce Anderson 在OOPSLA(OO Programming,Languages and Applications,编程语言及软件工程顶级会议)会议上首次开设了关于设计模式的工作组。01993年 Kent Beck 和 Grady Booch 赞助了第一次关于设计模式的会议,这次会议后来发展为

5、众所周知的 Hillside组。01994 年第一次编程模式语言会议召开(PLoP)。01995年“四人组”出版了设计模式-可复用面向对象软件的基础一书,这本书成为设计模式的经典书籍。软件模式与设计模式(续)软件模式与设计模式(续)y设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结,使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。y尽管我们称之为“设计模式”,但它们实际上并不局限于设计领域。设计模式关键元素设计模式关键元素 y设计模式一般有如下几个基本要素:模式名称,问题,目的,解决方案,效果,样例代码和相关设计模

6、式,其中的关键元素包括以下四个方面:0模式名称(pattern name)0问题(problem)0解决方案(solution)0效果(consequences)设计模式分类设计模式分类 y设计模式的分类有好几种,可以根据其目的(模式是用来做什么的)分为创建型(Creational),结构型(Structural)和行为型(Behavioral)三种。0创建型模式主要是用来创建对象。0结构型模式主要是处理类或对象的组合。0行为型模式则主要用来描述对类或对象怎样交互和怎样分配职责。设计模式分类(续)设计模式分类(续)y可以根据范围将设计模式分为类模式和对象模式:0类模式处理类和子类之间的关系,这

7、些关系通过继承建立,在编译时刻就被确定下来,是属于静态的。0对象模式处理对象间的关系,这些关系在运行时刻变化,更具动态性。GoF设计模式简介设计模式简介 范围范围目的目的创建型创建型结构型结构型行为型行为型类类Factory MethodAdapter_ClassInterpreter Template Method对象对象Abstract FactoryBuilderPrototypeSingletonAdapter_ObjectBridgeCompositeDecoratorFacadeFlyweightProxyChain of Responsibility CommandIteratorMediatorMementoObserverStateStrategyVisitorGoF设计模式简介(续)设计模式简介(续)使用设计模式的好处使用设计模式的好处 y设计模式融合了众多专家的经验,并以一种标准的形式供开发人员所用,它提供了一种通用的语言以方便开发人员之间的交流和沟通。它使得重用成功的设计更加容易,并避免那些导致不可重用的设计方案。模式是一种指导,在一个良好的指导下,有助于我们完成任务,有助于作出一个优良的设计方案,达到事半功倍的效果,而且会得到解决问题的最佳办法。它主要有如下优点:0使得设计更易于修改 0提升设计文档的水平0使得设计更通俗易懂

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 财经金融

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁