了对象模型中操作和约束的含义、动态模型中动作的意义。
功能建模过程:确定输入值和输出值、建立数据流图。
5. 在面向对象方法中,信息隐蔽通过对象的封装性来实现。类结构分离了接口和实现,
从而支持了信息隐蔽。
6. 面向对象有三个基本要素:抽象、封装性(信息隐蔽)、共享性。面向对象技术在三个
级别上促进了共享:同一个类中的共享(如同一类中有相同的数据结构)、在同一个应用中的共享、在不同应用中的共享(如库类这种机制)。
7. 在确定属性时,所有修饰性名词词组是侯选定属性。在确定类时,所有名词是候选的
类。常用动词或动词词组来表示关联。与时间联系在一起的瞬时操作是动作,有时间间隔的操作是活动。
8. 在类的层次结构中,上层称作父类或超类,下层成为子类。
9. 面向对象的主要特征:对象惟一性(对象本身惟一的标识,通过这种标识可找到相应
对象)、分类性(具有一致的数据结构和行为的对象抽象成类)、继承性、多态性。
二、 面向对象分析
1. 面向对象分析就是抽取和整理用户需求并建立问题域精确模型的过程。目的是对客观
世界的系统进行建模。 2. 面向对象分析中的定义结构:
一般-特殊结构:也称分类结构,是“或”、“is a”的关系。 整体-部分结构:也称组装结构,是“与”、“has a”的关系。
3. 面向对象分析模型的作用:明确问题要求,为用户和开发人员提供明确需求、为用户
和开发人员提供一个协商基础、作为后继的设计和实现的
25
框架。
三、 面向对象设计
1. 重用也叫再用或复用,指同一事物不作修改或稍加改动就可多次重复使用。 软件复用的范围:数据复用、模块复用、结构复用、设计复用、规格说明复用。 软件复用技术:合成技术、生成技术、面向对象的软件复用技术。 2. 面向对象设计分为:
系统设计:内容包括:系统分解、确定并发性、处理及其任务分配、数据存储管理、
全局资源的处理、选择软件控制机制、人机交互接口设计。
对象设计:内容包括:获得操作、确定操作的目标对象、算法设计、优化设计、控制
的实现、调整继承、关联的设计。
3. 面向对象设计准则:模块化、抽象、信息隐蔽、低耦合、高内聚。 4. 面向对象设计中的三种内聚:操作内聚、类内聚、一般-具体内聚。
5. 面向对象的开发方法:Booch方法(原是面向Ada语言的,并处于面向对象开发方法
的奠基性地位)、Coad方法、OMT方法、OOSE方法。
6. 面向程序设计中提高重用性的准则:(1)提高方法的内聚。(2)减小方法的规模。(3)
保持方法的一致性。(4)把策略与实现分开。(5)全面覆盖。(6)尽量不使用全局信息。
7. 面向程序设计中提高扩充性的准则:(1)封装实现策略。(2)不要用一个方法遍历多
条关联链。(3)避免使用多分支语句。(4)精心确定公有方法。
8. 面向程序设计中提高健壮性的准则:(1)预防用户的操作错误。(2)检查参数的合法
性。(3)不要预先确定限制条件。(4)先测试后优化。
26
9. 保持设计结果清晰易读的主要因素:(1)用词一致。(2)使用已有的协议。(3)减少
消息模式的数目。(4)避免模糊的定义。
10. 面向对象软件的测试分为算法层、类层、模块层、系统层四个层次进行。
11. 面向对象设计的启发规则: