软件体系结构模式ppt课件_第1页
软件体系结构模式ppt课件_第2页
软件体系结构模式ppt课件_第3页
软件体系结构模式ppt课件_第4页
软件体系结构模式ppt课件_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件体系结构模式,1,软件体系结构模式,教学目标:掌握模式的概念熟练掌握模式的构成掌握模式的类别教学重点:掌握模式的概念、作用与构成教学难点:熟练掌握模式的构成,2,一、什么是模式,当专家求解一个特殊问题时,一般不会发明一种和已有解决完全不同的方案来处理这个问题。他们往往想起已解决的相似问题,并重用其解法的精华来解决新问题。这种“专家行为”,即同时考虑一对问题-求解方案,在很多不同领域中是共同的。-模式,3,1.1软体体系结构的模式,软体体系结构的模式描述了一个出现在特定设计语境中的特殊的再现设计问题,并为它的解决方案提供了一个被证明良好的一般计划。解决方案通过描述它的关键组件、它们的责任和相互关系以及它们的协作方式来具体指定。,4,1.2模式的作用,模式有助于利用资深软件工程师的经验来构建软件。模式总结了在软件开发中现存的、被证明良好的经验,再用来促进好的设计实践。,5,1.2模式的作用,保存模式文档已被证明是很好的设计经验,它们提炼并提供一种方式来重用从实践经验中获得的设计知识。模式为设计原则提供一种公共的词汇和理解。它们提高了对设计问题及其解决方案的讨论效率。,6,1.2模式的作用,一个模式提供了一个问题族的一般解决方案的计划,而不是可以使用的预制模块。模式有助于管理软件复杂度。每个模式描述一种已被证明的方法以处理指出的问题:所需组件的种类、它们的作用、要隐藏的细节、必须看到的抽象以及每一个是如何工作的等等。,7,二、模式的构成,模式构成的三要素语境问题解决方案,8,2.1语境,通过描述问题提出的场景,语境扩展了清晰的问题-解决方案的二分法。确定一个模式可能应用到的所有场景,实现上是不可能的。一个实际的方法是列出特殊模式关注问题可能出现的所有已知场景。,9,2.2问题,描述了在给定语境中重复出现的问题。模式组织使用术语“强制条件”来说明问题要解决时应该考虑的各个方面,如:解决方案必须满足的需求例如:对等进程的通信必须是高效的你必须考虑的约束例如:进程间通信必须遵守特定协议解决方案必须具有希望的特性例如,软件更改应该是容易的,10,2.3解决方案,模式的解决方案给出了如何解决再现问题,或者更恰当地说是如何平衡与之相关的强制条件。其包括两个方面:每个模式规定了一个特定的结构,即元素的一个空间配置每个模式规定了运行期间的行为,11,三、模式类别,模式可分为三种类型体系结构模式设计模式惯用法每一种类型都由具有相似规模或抽象程度的模式组成。,12,3.1体系结构模式,根据一些整体构建原理来建立可行的软件体系结构。体系结构模式表示软件系统的基本结构化组织图式。它提供一套预定义的子系统,规定它们的职责,包含用于组织它们之间关系的规则和指南。例如:MVC体系结构模式,13,3.2设计模式,软件体系结构的子系统,以及它们之间的关系,通常由几个更小的体系结构单元构成。我们用设计模式来进行描述。设计模式提供一个用于细化软件系统的子系统或组件,或它们之间关系的图式。它描述通信组件的公共再现结构,通信组件可以解决特定语境中的一个一般设计问题。例如观察者或出版者-订阅者模式。,14,3.3惯用法,惯用法处理特定设计问题的实现。惯用法是具体针对一种编程语言的低层模式。惯用法描述如何使用给定语言的特征来实现组件的特殊方面或它们之间的关系。例如:C+使用引用-计数惯用法来管理动态分配的资源,而Smalltalk则提供无用单元收集机制,15,四、总结,模式有助于利用资深软件工程师的经验来构建软件,为开发具有已定义属性的软件提供了一种有前途的方法。模式把现有的设计知识文档化,有助于你为设计问题找到适当的解决方案。模式存在于不同的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论