10.2 面向对象设计过程与准则
更新于 2026年10月10日
版权声明
10.2 面向对象设计过程与准则
面对对象设计除了应遵循传统软件设计的基本原理之外,还要考虑面向对象设计的如下六个特点。
(1)模块化。在结构化的设计中,一个模块通常为一个过程或一个函数,它们封装了一系列的控制逻辑;而在面向对象的设计中,一个模块通常为一个类或对象,它们封装了事物的属性或操作。
(2)抽象。类是对一组具有相似特征的对象的抽象。可以说,类是一种抽象的数据类型,它用紧密结合的一组属性和操作来表示事物的客观存在。
(3)信息隐藏。在面向对象方法中,信息隐藏是通过对象的封装性来实现的。在一个对象类中封装了一个具体对象的属性和操作,外界只有通过对象类的接口才能访问其属性。
(4)低耦合(弱耦合)。在面向对象的设计中,耦合主要指不同模块之间相互关联的程度。低耦合有利于降低由于一个模块的改变而对其他模块造成的影响。但是,当两个模块必须相互联系时,要通过类的公共接口实现耦合,而不应该依赖于类的具体实现细节。
(5)高内聚(强内聚)。内聚是衡量一个模块内各个元素彼此结合的紧密程度。在设计时应该力求做到高内聚,提高模块的内聚性有利于提高系统的独立性。
(6)重用性。尽量使用已有的类,如果确实需要创建新类时,应考虑将来被重复使用的可能。
面向对象设计一般具有如下三个步骤。
(1)系统设计。
①将子系统分配到处理器。
②选择实现数据管理、界面支持和任务管理的设计策略。(https://www.daowen.com)
③为系统设计合适的控制机制。
④复审并考虑权衡(折中)。
(2)对象设计。
①在过程级别(procedural lavel)设计每个操作,即设计每个操作的实现细节。
②定义内部类。
③为类属性设计内部数据结构。
④消息设计
⑤使用对象间的协作和对象—关系模型,设计消息模型。
(3)复审。
复审设计模型并在需要时迭代。