教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 初中教育 >

OOAD 第6章 面向对象设计 CUMT

来源:网络收集 时间:2026-03-27
导读: 面向对象分析与设计 Object-Oriented Analysis and Design 第6章 面向对象的设计 张 磊 博士 副教授 zhanglei@《计算机网络》课件 制作人:谢希仁 6.1 什么是面向对象设计OOA与OOD的关系: 1、从OOA到OOD不是转换;——是调整和增补 将OOA模型搬到OOD; 进行

面向对象分析与设计 Object-Oriented Analysis and Design

第6章 面向对象的设计

张 磊 博士 副教授 zhanglei@《计算机网络》课件 制作人:谢希仁

6.1 什么是面向对象设计OOA与OOD的关系:

1、从OOA到OOD不是转换;——是调整和增补 将OOA模型搬到OOD; 进行必要的调整, 作为OOD模型的问题域 部分;

OOA 模型构件部署

增补其它四个部分,成 为完整的OOD模型。

人 机 交 互 部 分

问题域 部分

数 据 口 部 分

任务管理部分 课件制作人:谢希仁

2、采用一致的概念和表示法——不存在分析与设计之间的鸿沟

3、有不同的侧重点和不同的策略OOA主要针对问题域,识别有关的对象以及它们之 间的关系,产生一个映射问题域,满足用户需求,独立 于实现的OOA模型。 OOD主要解决与实现有关的问题,基于OOA模型, 针对具体的软、硬件条件(如机器、网络、OS、GUI、 DBMS等)产生一个可实现的OOD模型。

4、OOA与OOD可适合不同的生命周期模型——瀑布模型、螺旋模型、增量模型、喷泉模型

课件制作人:谢希仁

不同过程模型中的OOD分析 (OOA) 设计 (OOD) 喷泉模型

演化

集成 测试

编程 (OOP)测试 瀑布模型 维护

编程 (OOP)设计 (OOD) 分析 (OOA)

课件制作人:谢希仁

OOD——按实现条件对OOA模型进行调整,并 补充几个新的组成部分(也是由对象构成)与实现有关的因素: 图形用户界面系统 硬件、操作系统及网络 数据管理系统 其他——编程语言、可复用构件库……

基本思想:尽可能隔离实现 条件对系统的影 响——提供独立 的接口 对不可隔离的因 素,按实现条件 调整OOA模型

按实现条件调整 OOA模型

新增的组成部分,隔 离实现条件

实 现 条 件 实现条件

实 现 条 件

课件制作人:谢希仁

两种不同的观点第二种观点分 析 设 计

第二种观点的理由: (1)在各种分析/设计方法中 “做什么”和“怎么做”实际 上没有严格的划分”。 (2)过分强调“分析不考虑怎 么做”将使某些必须在OOA考虑 的问题得不到完整的认识。 (3)由于OO方法表示形式的一 致,不存在把细化工作留给设 计人员的必然理由。

第 一 种 观 点

问题域与 系统责任 分 析 做 什 么

与实现有 关的因素

设 计

怎 么 做

关键问题:对象的特征细节( 如属性的数据类型和服务流程 (4)避免重复地认识同一事物, 图),是在分析时定义还是在 并有利于分析结果的复用。 课件制作人:谢希仁 设计时定义?

Coad与Yourdon在设计阶段中采用分 析阶段中提到的五个层次。 不同的是,在设计阶段中,这五个层次 是用于建立系统的四个组成成份: 问题论域 用户界面 任务管理 数

据管理课件制作人:谢希仁

6.2 面向对象设计的设计准则(1) 模块化 模块化是软件设计的重要准则。在面向对象开发 方法中,将对象定义为模块。对象把数据结构和作 用在数据上的操作(方法)封装起来构成模块。对象 是组成系统的基本模块。 (2) 抽象 类是一种抽象数据类型,在该数据类型之上,可 以创建对象(类的成员)。类包含相似对象的共同属 性和服务,它对外定义了公共接口,构成了类的规 格说明(即协议),供外界合法访问。课件制作人:谢希仁

(3) 信息隐藏 在面向对象方法中,对象是属性和服务的封装体, 这就实现了信息隐藏。类结构分离了接口与实现, 类的属性的表示方法和操作的实现算法,对于类的 用户来说,都应该是隐藏的,用户只能通过公共接 口访问类中的属性。 (4) 弱耦合 不同对象之间耦合是不可避免的。两个对象必 须相互联系相互依赖时,应该通过类的协议(即公 共接口)实现两个对象相互依赖(耦合),而不是通过 类的具体实现细节来描述。 (5) 强内聚 在面向对象设计中,内聚可分为下述三类:课件制作人:谢希仁

1) 服务(操作)内聚。一个服务应该是单一的,即只完 成一个任务。 2) 类内聚。类内聚要求类的属性和服务应该是高内聚 的,而且它们应该是系统任务所必需的。一个类应 该只有一个功能,如果某个类有多个功能,通常应 该把它分解成多个专用的类。 3) 一般-特殊内聚。一般-特殊内聚表示:一般-特殊 结构符合领域知识的表示形式,也就是说,特殊类 应该尽量地继承一般类的。

课件制作人:谢希仁

(6)可重用 在面向对象设计中,一个类的设计应该具有通用性, 为开发相似的系统提供软件重用可能。因此,在软 件开发过程中,为了实现重用,既要尽量重用已有 的类,又要创建可重用的新类。

课件制作人:谢希仁

设计策略在使用面向对象方法学开发软件的实践中,得 出了下面一些基于经验的启发规则,这些规则往往 能帮助软件开发人员设计出好的方案来,以保证软 件的质量。 (1)设计结果应该清晰易懂 (2)一般-特殊结构的深度应适当 (3)设计简单的类 (4)设计简单的协议 (5)设计简单的服务 (6)减少设计变动课件制作人:谢希仁

设计结果应该清晰易懂

用词一致 使用已有的协议 减少消息模式的数目

避免模糊的定义

课件制作人:谢希仁

一般——特殊结构的深度应适当

应该使类等级中包含的层次数适当。 一般说来,在一个中等规模(大约包含100个类) 的系统中,类等级层次数应保持为7±2。

不应该仅仅从方便编码的角度出发随意

创建派生 类,应该使一般——特殊结构与领域知识或常识 保持一致。

课件制作人:谢希仁

设计简单的类

避免包含过多的属性 有明确的定义 尽量简化对象之间的合作关系

不要提供太多服务

课件制作人:谢希仁

使用简单的协议

一般说来,消息中的参数不要超过3个。 经验表明,通过复杂消息相互关联的对象是紧 耦合的,对一个对象的修改往往导致其他对象 的修改。

课件制作人:谢希仁

使用简单的服务

一般说,应该尽量避免使用复杂的服务。 如果一个服务中包含了过多的源程序语句, 或者语句嵌套层次太多,或者使用了复杂的 CASE语句,则应该仔细检查这个服务,设法 分解或简化它。

如果需要在服务中使用CASE语句,通常应该 考虑用一般——特殊结构代替这个类的可能性。

课件制作人:谢希仁

把设计变动减至最小

通常,设计的质量越高,设计结果保持不变的 时间也越长。 即使出现必须修改设计的情况,也应该使修改 的范围尽可能小

课件制作人:谢希仁

6.3 面向对象设计模型面向对象设计的五个层次、四个部分面向对象设计模型由主题、类-&-对象、结构、 属性和服务等五个层次组成,并且又扩充了问题域 (PDC)、人机交互(HIC)、任务管理(TMC)和数据管 理(DMC)四个部分。

典型的面向对象设计模型如图示。

课件制作人:谢希仁

…… 此处隐藏:1380字,全部文档内容请下载后查看。喜欢就下载吧 ……
OOAD 第6章 面向对象设计 CUMT.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/47011.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)