问题域部分的设计
1 为复用类而增加结构
在OOD阶段要尽量使用可复用的成分。
2 提高性能
(1)调整对象的分布
(2)增加保存中间结果的属性和类
(3)增加或减少主动对象
(4)合并通信频繁的类
(5)用聚合关系描述复杂类
(6)细化对象的分类
3 增加一般类以建立共同协议
(1)增加一个类,将所有具有相同操作和属性的类组织在一起,提供通用的协议。
(2)增加一般类,提供局部通用的协议。
(3)对相似操作,可对其特征标记做小的修改,以使得它们相同,然后再把它们提升到一般类中。
4 按编程语言调整继承
4.1 对多继承的调整
(1)采用聚合把多继承换为单继承
(2)采用压平的方式
4.2 取消继承
(1)将继承结构展平
(2)采用聚合
5 转化复杂关联并决定关联的实现方式
5.1 对复杂关联的转化
(1)把关联类和N元关联转化为二元关联
(2)把多对多关联转化为一对多关联
5.2 关联的实现方式
(1)聚合
(2)关联
6 调整与完整属性
(1)显式的代码
(2)批处理性的重计算
(3)触发器
7 构造及优化算法
8 决定对象间的可访问性
9 定义对象实例
(1)用相应的类定义内存中的对象,包括静态声明和动态创建两种方式。
(2)当系统需要通过从外存读取数据来创建一个对象时,先创建该对象,再丛外存中读取该对象数据,把数据赋值给对象的相应属性。
1 为复用类而增加结构
在OOD阶段要尽量使用可复用的成分。
2 提高性能
(1)调整对象的分布
(2)增加保存中间结果的属性和类
(3)增加或减少主动对象
(4)合并通信频繁的类
(5)用聚合关系描述复杂类
(6)细化对象的分类
3 增加一般类以建立共同协议
(1)增加一个类,将所有具有相同操作和属性的类组织在一起,提供通用的协议。
(2)增加一般类,提供局部通用的协议。
(3)对相似操作,可对其特征标记做小的修改,以使得它们相同,然后再把它们提升到一般类中。
4 按编程语言调整继承
4.1 对多继承的调整
(1)采用聚合把多继承换为单继承
(2)采用压平的方式
4.2 取消继承
(1)将继承结构展平
(2)采用聚合
5 转化复杂关联并决定关联的实现方式
5.1 对复杂关联的转化
(1)把关联类和N元关联转化为二元关联
(2)把多对多关联转化为一对多关联
5.2 关联的实现方式
(1)聚合
(2)关联
6 调整与完整属性
(1)显式的代码
(2)批处理性的重计算
(3)触发器
7 构造及优化算法
8 决定对象间的可访问性
9 定义对象实例
(1)用相应的类定义内存中的对象,包括静态声明和动态创建两种方式。
(2)当系统需要通过从外存读取数据来创建一个对象时,先创建该对象,再丛外存中读取该对象数据,把数据赋值给对象的相应属性。