- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 面向对象设计建模 面向对象设计概述 系统设计 对象设计 领域对象设计 面向对象设计概述 与传统的结构化设计相比: 相同点:将需求分析模型转变为软件设计模型 不同点:OOA和OOD之间没有明显界限 OOA和OOD都是迭代过程 开发过程模型 瀑布式 分析 设计 编程 开发过程模型 螺旋式 分析,原型开发,风险管理 设计,原型开发,风险管理 编程,原型开发,风险管理 开发过程模型 增量式 少量的分析 少量的设计 重复 面向对象设计的步骤 面向对象设计过程的步骤 1.系统设计 系统整体结构的设计 2.对象设计 对OOA模型中类/对象模型的具体化和细化 3.消息设计 从对象——关系模型,设计出消息模型 4.设计模型复审 OOD遵循的原则 结构化方法中软件设计的基本原理在进行面向对象设计时仍然成立,但是增加了一些与面向对象方法密切相关的新特点,从而具体化为面向对象设计准则。 OOD遵循的原则 (一)模块化 对象就是模块,把数据和方法结合在一起 (二)抽象 过程抽象 数据抽象 参数化抽象(某些PDL) OOD遵循的原则 (三)信息隐藏 通过对象的封装性实现 (四)弱耦合 降低交互耦合 提高继承耦合 信息隐藏的实例 信息隐藏的实例 OOD遵循的原则 (五)强内聚 服务内聚 类内聚 一般-特殊内聚 (六)可重用 尽量使用已有的类 创建新类时,考虑将来的可重用性 面向对象设计的的原则详解 (一)模块化 面向对象软件开发模式,很自然地支持了把系统分解成模块的设计原理:类就是模块。 它是把数据结构和对数据的操作紧密地结合在一起所构成的模块。 (三)信息隐藏 在面向对象方法中,信息隐藏通过对象的封装来实现。对于用户来说,类中的属性的表示方法和操作的实现算法都应该是隐藏的。 (四)弱耦合 结构化方法中耦合是指在系统中的各个模块之间的相互连接或相互依赖的强度。在面向对象方法中,耦合主要指不同对象之间通过消息相互关联的紧密程度。应该遵守下列准则使这种耦合尽量松散: 1.尽量降低消息连接的复杂程度。应该尽量减少消息中包含的参数个数,降低参数的复杂程度。 2.减少对象发送(或接收)的消息数。 (五)强内聚 内聚用于描述系统内组成部分中各元素彼此结合的紧密程度,应尽量避免低内聚。在面向对象设计中,从三个层次来考察内聚性。 1.单个方法的内聚性:方法是指操作的实现过程,一个操作由一个或多个方法实现。对方法的内聚性的评价与结构化设计中的相同,具有高内聚的方法应当只执行一个功能。 2.?类的内聚性:设计类的原则是,一个类应该只有一个用途,类中的属性和操作应该全都是完成该类的任务所必需的,其中不包括无用的属性和操作。如果某个类有多个用途,通常应该把它分解成多个专用的类。 3.层次结构的内聚性:对象之间通过继承关系而构成的层次结构,特殊类应该确实是对它的一般化类的一种具体化。如果一个派生类摒弃了它基类的许多属性和服务,那就是一个低内聚的。 (六)可重用 软件重用是提高软件开发生产率和目标系统质量的重要途径。重用基本上从设计开始。 重用有两方面的含义:一是尽量使用已有的类(包括开发环境提供的类库,以及以往开发类似系统是创建的类);二是如果确实需要创建新类,则在设计这些新类的协议时,应该考虑将来的可重复使用性。 将OO分析模型转换为OO设计模型 OOD的四个层次: 系统架构层: 描述整个系统的总体结构,使所涉及的软件能够满足客户定义的需求,并实现支持客户需求的技术基础设施 类和对象层:包含类层次和每个对象 的设计表示 消息层: 包含使得每个对象能够和其 协作者通信的细节,建立系 统的外部和内部接口 责任层: 包含针对每个对象的所有属性 和操作的数据结构和算法的设计 由OO分析模型转换到OO设计模型 Fichman和Kemerer提出的10种设计建模成分 模块层次的表示 数据定义规约 过程逻辑的规约 端到端处理序列的指明 对象状态和变迁的表示 类及层次的定义 操作到类的赋予 详细的操作定义 消息连接的规约 排它服务的标识 面向对象设计的任务 系统架构设计 系统高层结构设计 确定设计元素 确定任务管理策略 实现分布式机制 设计数据存储方案 人机界面设计 系统元素设计 类、对象设计 子系统设计 包设计 模式的应用 定义:解决某一类问题的方法论,也是对通用问题的通用解决方案。每个模式都描述了一个在某个特定环境中不断出现的问题,然后描述该问题解决方案的核心。 架构模式 表示软件系统的基本结构组织方案。提供了一组预定义的子系统,指定它们的职责,并且包括用于组织其间关系的知道规则。 层次架构 模型-视图-控制架构 管道与过滤器
您可能关注的文档
- 20151228-长城-2016年度a股策略报告牛市2 0之兵无常势.pdf
- 2020年市政精讲班第05讲-沥青混合料的组成与材料.pdf
- lcd共享gp培训工程师教材v3 080903.ppt
- 电热3c报告证书3c报告青岛ccc报告38 es50h-v1系列c-033-20110304.pdf
- 05销售素材产品销售违禁用语20171205.pdf
- 可信区块链-区块链专利态势白皮书1 0版-2019 1.pdf
- 13一模专项训练13学生2015秋季初三数学培优经典进度一.pdf
- 微纳制造纳米压印技术.ppt
- 年薪30w-python全能开发人工智能课件chapter04函数树1.pdf
- 2018年特岗教师面试备考指导中学历史.pdf
原创力文档


文档评论(0)