概述
任务
中层设计的:过程、调用; 类、协作
低层设计的全部:数据结构、算法;类型、语句、控制结构
结构化设计
设计思想:按算法 分解。 (因为此时项目 以编程为驱动)
把系统看做一系列相互关联的过程。
再针对某个单一过程再次分解,分解出更多更加细小的过程。
面向对象设计
面向对象设计的思想
按照个体的单一职责来分解:
设计“类以及与之相互通信的对象之间的协作”。
1)建立设计模型
① 通过职责建立静态设计模型
抽象类的职责
抽象类之间的关系
② 通过协作建立动态设计模型
添加辅助类
抽象对象之间协作
2)重构设计模型
① 根据模块化思想进行重构,目标为高内聚、低耦合。
② 根据信息隐藏思想重构,目标为隐藏职责与变更。
③ 利用设计模式重构。
建模
- 通过职责建立静态模型
1)抽象对象的职责
属性职责
对象的静态特性(状态特性)
方法职责
对象的动态特性(行为)
对象的行为用于维护属性(依赖于属性),或提供某项服务。