体系结构第20章.pptVIP

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
体系结构第20章

* * 第二十章 理解设计模式 已经学习了UML的基础知识以及如何将它运用到一个开发项目环境中,作为过渡,让我们来看看UML在一个热点领域——设计模式中的应用。这一章主要有下列内容: ●参数化。 ●设计模式。 ●运用设计模式。 ●使用自己的设计模式。 ●设计模式的优点。 20.1 参数化 我们知道,类是创建对象的模板。对象是类的一个实例。 我们回到哪个洗衣机的例子中去。详细指明洗衣机(washing machine)类(正确的表示法应该为WashingMachine类)具有bandName(品牌)、modelName(型号)、serialNumber(序列号)和capacity(容量)属性,以及addClothes()(添加衣物)、addDetergent()(添加洗涤剂)及removeClothes()(取出衣物)操作后,这样就有了创建洗衣机类对象的模板。每次要创建一个对象,都要给这些属性指定具体的值。 UML可以让你更进一步。它提供了一种类似于创建新对象的创建类的机制。可以为某类的一个属性子集指定值从而生成一个具体的类,而不是类的对象。这种类被称为参数化类(parameterized class)。它的UML表示法如下图所示。类矩形框右上角挂着一个小的虚线框,框中是为了生成具体类所需要指定值的参数。为了记录的方便,这些参数被称为无界参数(unbound parameter)。当为这些参数指定值时,就说这些参数被绑定到这些值上。右上角虚线柜中的“T”说明这个类是创建其他类的模板。 这里有一个例子。假设将LivingThing(生物)设置为参数化类。它的无界参数可以是genus(种)和species(属),它还具有生物通常都具有的属性如名称、高度、体重等,如下图所示。 如果将genus绑定到“homo(人类)”,species绑定到“sapiens(人)”,那么就生成了一个叫做“Human(人)”的类。类的名字被绑定到T。下图说明绑定关系的一种表示法。这种风格的表示法被称为显式绑定,因为它明确地显示出了生成的类和参数化类之间的依赖关系,并提供了生成的类的名字。 另一种绑定的表示法叫隐式绑定。不显示出依赖关系,绑定参数出现在产生的类名后面,并用尖角括号括起来。如下图所示。 不论采用哪种表示法,都可以为name、height、和weight指定值来创建Human类的对象。 20.2 设计模式 可以将参数化的思想进一步扩展。任何UML分类都可以带参数(即参数化)。实际上一组互相协作的分类都可以被参数化,这就引出了一个令人感兴趣的研究领域。 面向对象技术在近几十年得到的日益广泛的应用,对经常重复出现的类似问题,运用面向对象技术已经总结出许多健全的解决方案。这些解决方案 被称为设计模式(design pattenm),并且被获得广泛的应用。由于设计模式是面向对象技术领域的产物,因而它也具有容易形成概念,容易被表示成图以及容易被重用的特点。UML是一种通用的面向对象建模语言,因此也可以用来解释和描述设计模式。 设计模式实际上是一个设计问题的解决方案(一个模式)。它是在项目遇到具体的设计问题后被提出的,并且开发组发现所提出的问题解决方案在其他的语境中也同样适用。每个设计模式描述了一组相互通信的对象或者类。这组对象可以在具体的语境中用来解决一个设计问题。 使设计模式日益流行起来的第一本书名字就叫Design Pattern。在这本书中,分类整理了23个基本的设计模式。根据每个模式的用途这些设计模式被分为三类:(1)创建型模式(creational pattern)处理新对象的创建过程,(2)结构型模式(structural pattern)处理对象和类的组成,(3)行为模式(behavioral pattern)详细说明对象或类之间如何交互以及如何分配职责给对象或类。他们还进一步根据设计模式是应用于对象还是类进行了划分,这种分类标推被称为范围(scope),大部分模式的范围都处于对象层次。 每个设计模式都有四个基本组成元素:(1)为了便于用文字描述而对模式所起的名称(name),(2)该模式所能解决的问题(problem),(3)说明如何解决问题以及模式中的对象或类之间如何协作的解决方案(solution),(4)运用模式所产生的后果(consequence)。 可以用UML模型中的一个参数化的协作表示—个设计模式。由于

文档评论(0)

feixiang2017 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档