第11章面向对象的Coad方法.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章 面向对象coad方法 11.2 面向对象分析 11.2.6 定义服务 11.3 面向对象的设计 11.3.2 设计问题域组元 1. 原因 面向对象方法中的一个主要目标就是保持问题域组织框架的完整性,使用这种方法可以直接追踪分析、设计直至程序设计的内容,因为这3个阶段都是根据问题域本身来实现的。  设计问题域组元的理由就是为了寻求稳定性, 无论何种修改,例如增加具体类、增加属性或服务等,都是建立在问题域基础上。稳定性是实现可重用的分析、设计及程序设计的关键因素,为了更好地支持系统的扩充性也需要稳定性。  2. 内容 在面向对象的开发方法中,分析和设计不能截然分开,面向对象分析的结果就是面向对象设计多组元模型的一个完整的部分,但面向对象设计可以修改或增加一些内容。 对于设计问题组元来说,要在分析模型基础上,增加一些实际的修改,这些修改是针对具体的设计考虑的,修改包含合并或分解类对象、结构、属性及服务等。这些修改应建立在具体的客观标准上。  3. 策略 在进行设计问题域组元时, 采用下列策略:  (1) 应用面向对象的分析, 使用相同的符号表示, 围绕 4 种组元组织。 (2) 对面向对象分析的结果进行改进, 可直接应用分析的结果。 (3) 对面向对象分析的结果进行完善, 必须加入一些常规类以完善分析的内容。  4. 方法 1) 利用重用设计加入现有类 现有类指的是面向对象程序设计语言提供的类库中的类, 将所需的类加入到问题域组元中,同时指出现有类不用的属性和服务,使无用的属性和服务减少到最低程度。 还要指出问题域中不再需要的部分,以及从现有类中继承而来的属性和服务。 紧接着修改问题域的结构和关联,必要时将它们加入到现有类中。  2) 将专门的问题域类组合在一起 需要引入一个类将专门的问题域类组合在一起, 引入的类即为“根”类, 组合在一起的问题域类作为从属的类。引入“根”类主要是为了将专门的问题域类组合在一个类库中,这只是当不能使用更复杂的组合机制时才采用的一种组合方法。 另外, 还可建立协议来完成这种组合。  3) 加入一般化类(抽象类)以建立协议 在许多情况下,大量的具体类需要相似的一个协议, 即需要定义一个相似的服务集合, 这时可引入一个附加的抽象类,目的是建立一个协议。 这些服务在具体类中详细定义。  4) 调整继承的支持层次 如果分析模型中的一般具体结构中包括多重继承, 而所使用的程序设计语言没有多重继承机制,或只有单重继承或根本没有继承机制, 这时就要对分析模型进行修改。使用化为单一层次的方法,将多重继承化为单重继承, 这意味着不再在设计中明确表示一个或多个一般具体层次,而意味着某些属性和服务可在具体类中重复多次。  对于不具备继承机制的语言,就要将各个一般具体结构变成一组零层次的类对象,即调整为各个孤立的类对象。  5. 提高效率 提高效率是设计的关键问题之一, 为了从速度方面考虑提高效率,可能需要对问题域组元进行修改,当对象之间的消息发送出现阻塞时,必须进行修改。需要把问题域组元中的两个或多个类组合起来产生高耦合。这种修改是否提高速度, 还需经过测试和检查来了解。  为了提高目测速度, 需要将设计模型的 4 种组元都增加一种构造块来存放某些中间结果。 一种方法是扩充类对象的属性来存放中间结果,另一种方法是使用更低层的构造块来扩充类对象,这就构成了整体部分结构。  6. 支持数据管理组元 为了支持数据管理组元,各个被存储对象必须了解自身是如何存储的,一种方法是“自己保存自己”,即通知对象保存自己, 各对象知道如何保存自身, 加入完成对象这种定义的属性和服务; 另一种方法是各个对象将自己发送给数据管理组元, 由相应组元保存。  11.3.3 设计人机交互组元 1. 原因 人机交互组元表示了用户与系统交互作用使用的命令以及系统提供给用户的信息。人机交互组元设计得如何,对用户使用系统带来较大影响。开发者在分析阶段为了得到正确结果, 要对用户进行分析,在设计过程中必须继承这种分析。 包括分析用户,确定交互作用的时间, 分析具体系统使用的交互技术等。 

文档评论(0)

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

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

1亿VIP精品文档

相关文档