第三部分
第三部分
面向对象的设计
面向对象的设计
2
7.1 什么是面向对象设计
概而言之,面向对象的设计(OOD)就是运用面向对象方法进行系统设
计;但不同时期有不同内容及特点。
第7章 面向对象的设计(OOD)概述
一、早期的OOD(八十年代至九十年代初):
历史:从OOP发展到OOD
G. Booch 1982 年发表“Object-Oriented Design” ,
首次称“面向对象的设计”。
1986 年发表“Object-Oriented Development”
较完整地阐述了OOD思想。
两个术语都用OOD作为缩写,内容上也没有根本区别
R. J. Abbott 1983年提出正文分析方法,用规范的英语描述对一个问
题的解释,然后从描述中提取对象及其特征。例:名词——对象,动
词——操作。被后来的许多OOD方法所采用。
1986年后,相继出现了一批(早期的)OOD方法
3
早期的OOD方法
Booch86——Object-Oriented Development
面向对象的开发
GOOD——General Object-Oriented Development
通用面向对象的开发
HOOD——Hierarchical Object-Oriented Design
层次式面向对象的设计
OOSD——Object-Oriented Structured Design
面向对象的结构设计
……
4
早期OOD的特点:
1、不是基于OOA的
大多基于结构化分析结果(数据流图)
2、是OO编程方法的延伸
多数方法与编程语言有关,特别受Ada影响很大
3、不是纯OO的
对某些OO概念(如继承)缺少支持,
搀杂一些非OO 概念(如数据流和模块等)
4、不是只针对软件生命周期的设计阶段
OOD中的“D”——指的是Design 或 Development
多少涉及分析问题(如识别问题域的对象),但很不彻底
——早期的OOD可看作现今OOA&D方法的雏形
5
二、现今(90年代)的OOD
背景:
从结构化分析文档识别OOD的对象并非良策,识别对象
的关键问题在于用OO方法进行系统分析。
OO方法从设计发展到分析,出现OOA方法。
OOA和OOD构成完整的OOA&D方法体系。
OOD基于OOA,
识别对象由OOA完成,
OOD主要定义对象如何实现。