在软件设计中应遵循的设计原理:
- 模块化
- 模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户需求。
- 模块化提高了软件的可靠性
- 模块化提高了软件的可修改性
- 模块化也有助于开发工程的组织管理
- 抽象
- 人们在实践中认识到,在现实世界中一定事物、状态或过程之间总存在着某些相似的方面(共性)。把这些相似的方面集中和概括起来,暂时忽略它们之间的差异,这就是抽象。
- 抽象可分为最高抽象层次、较低抽象层次、最低抽象层次。
- 逐步求精
- 逐步求精是人类解决复杂问题时采用的基本方法,也是许多软件工程技术的基础。
- 求精实际上是细化的过程。
- 抽象与求精是一对互补的概念
- 信息隐藏和局部化
- 信息隐藏:使一个模块内包含的信息对于不需要这些信息的模块来说,是不能访问的。
- 局部化:把一些关系密切的软件元素物理地址放得彼此靠近。
- 模块独立
- 模块独立的概念是模块化、抽象、信息隐藏和局部化概念的直接结果。
- 模块的独立程度可以由两个定性标准衡量:内聚、耦合。
a.耦合分为:数据耦合、复合耦合、控制耦合、公共耦合、内容耦合
(低<——耦合性——>高)
b.内聚分为:偶然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、顺序内聚、功能内聚
(低<——内聚程度——>高)
- 模块独立要求:高内聚低耦合。