正在加载图片...
1.4面向对象设计初步 人们把设计视为定义系统的构造蓝图、约定和规则,以指导系统的实现。面向对象方法的一个特点是 OOA和OOD自然地过渡和结合。但仍然有区别:OOA与系统的问题论域更加相关,OOD与系统的实现 更加密切。 本节简要介绍面向对象设计(OOD)的基本要略。 4.1OOD模型 、从面向对象分析到面向对象设计 1、OOA与OOD的比较 从面向对象分析到面向对象设计是一个逐渐扩充模型的过程。面向对象分析主要模拟问题域和系统任 务,而面向对象设计是面向对象分析的扩充,主要是增加各种组成部分 具体来说,面向对象分析识别和定义类-&对象,这些类&-对象直接反映问题域和系统任务。而面向 对象设计识别和定义其它附加类-&-对象,它们反映需求的一种实现。面向对象分析和面向对象设计是开 发系统时的两个不同的阶段。 2、多层次多组成部分模型 多层次多组成部分模型由5层组成,在设计期间主要扩充为4个部分 (1)人机交互部分:有效的人机交互所必需的实际显示和输入。设计一组有关类接口视图的用户模 型的类和对象,设计用户界面 (2)问题域部分:面向对象分析的结果放在问题域部分。在该部分中,需要管理面向对象分析的某 些类-&-对象、结构、属性和方法的组合与分解。原因可能是时间与空间的折中、内存管理、开发人员的 变更及类的调整等。设计构造一组为底层应用建立模型的类和对象,细化分析结果 (3)任务管理部分:任务定义、通讯和协调,也包括硬件分配、外部系统以及装置协议。即确定系 统资源的分配,设计用于系统中类的行为控制的对象/类; (4)数据管理部分:对永久性数据的访问和管理。即确定系统持久对象的存储,将对象转换成数据 库记录或表格; 主题层 类-&对象层 结构层 人机交互部分间题域部分任务管理部分数据管理部分 属性层 方法层 多层次、多组成部分模型 详细地确定对象和类是OOD的关键工作。一种有效的启发式方法是对需要提供的服务和问题陈述作 语法分析,其中名词和名词短语可作候选对象,动词是候选对象服务,形容词表示了可能的子类关系。设 计经验和技巧是非常重要的 在分析和设计中,要注意遵循这样的原则:把构造由基本对象组装成复杂对象或活动对象的过程与分 解大粒度对象使系统细化过程相结合:把抽象化与具体化结合起来,把独立封装与继承关系结合起来等。 面向对象设计 1、面向对象设计范式 设计范式是用其分解过程的观点来刻划的。过程范式采用面向任务的观点。当提出一种解决目标问题 时,所提出的解决方法是通过将其分解成一系列任务来完成的,这些任务形成了过程应用程序的基本结构。 分析阶段开发的信息可以作为设计阶段的输入部分,但它是以不同于设计阶段的术语表示的。由于这种原 因,传统的软件生命周期观点包含了分析和设计之间的不必要的界限。导致了从分析阶段的问题域到设计1.4 面向对象设计初步 人们把设计视为定义系统的构造蓝图、约定和规则,以指导系统的实现。面向对象方法的一个特点是 OOA 和 OOD 自然地过渡和结合。但仍然有区别:OOA 与系统的问题论域更加相关,OOD 与系统的实现 更加密切。 本节简要介绍面向对象设计(OOD)的基本要略。 1.4.1 OOD 模型 一、从面向对象分析到面向对象设计 1、OOA 与 OOD 的比较 从面向对象分析到面向对象设计是一个逐渐扩充模型的过程。面向对象分析主要模拟问题域和系统任 务,而面向对象设计是面向对象分析的扩充,主要是增加各种组成部分。 具体来说,面向对象分析识别和定义类-&-对象,这些类-&-对象直接反映问题域和系统任务。而面向 对象设计识别和定义其它附加类-&-对象,它们反映需求的一种实现。面向对象分析和面向对象设计是开 发系统时的两个不同的阶段。 2、 多层次 多组成部分模型 多层次 多组成部分模型由 5 层组成,在设计期间主要扩充为 4 个部分。 (1)人机交互部分:有效的人机交互所必需的实际显示和输入。设计一组有关类接口视图的用户模 型的类和对象,设计用户界面; (2)问题域部分:面向对象分析的结果放在问题域部分。在该部分中,需要管理面向对象分析的某 些类-&-对象、结构、属性和方法的组合与分解。原因可能是时间与空间的折中、内存管理、开发人员的 变更及类的调整等。设计构造一组为底层应用建立模型的类和对象,细化分析结果; (3)任务管理部分:任务定义、通讯和协调,也包括硬件分配、外部系统以及装置协议。即确定系 统资源的分配,设计用于系统中类的行为控制的对象/类; (4)数据管理部分:对永久性数据的访问和管理。即确定系统持久对象的存储,将对象转换成数据 库记录或表格; 详细地确定对象和类是 OOD 的关键工作。一种有效的启发式方法是对需要提供的服务和问题陈述作 语法分析,其中名词和名词短语可作候选对象,动词是候选对象服务,形容词表示了可能的子类关系。设 计经验和技巧是非常重要的。 在分析和设计中,要注意遵循这样的原则:把构造由基本对象组装成复杂对象或活动对象的过程与分 解大粒度对象使系统细化过程相结合;把抽象化与具体化结合起来,把独立封装与继承关系结合起来等。 二、面向对象设计 1、面向对象设计范式 设计范式是用其分解过程的观点来刻划的。过程范式采用面向任务的观点。当提出一种解决目标问题 时,所提出的解决方法是通过将其分解成一系列任务来完成的,这些任务形成了过程应用程序的基本结构。 分析阶段开发的信息可以作为设计阶段的输入部分,但它是以不同于设计阶段的术语表示的。由于这种原 因,传统的软件生命周期观点包含了分析和设计之间的不必要的界限。导致了从分析阶段的问题域到设计
向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有