文档内容
内聚与偶合
偶然内聚:如果一个模块完成一组任务,这些任务彼此间即使有关系,关系也是很松散的。
逻辑内聚:如果一个模块完成的任务在逻辑上属于相同或相似的一类(例如,一个模块产生
各种类型的全部输出)。
时间内聚:如果一个模块包含的任务必须在一段时间内执行(例如,模块完成各种初始化工
作)。
过程内聚:如果一个模块内的处理元素是相关的,而且必须以特定次序执行。
通信内聚:如果模块中所有元素都使用同一个输入数据和(或)产生同一个输出数据。
顺序内聚:如果一个模块内的处理元素和同一个功能密切相关,而且这些处理必须顺序执行
(通常一个处理元素的输出数据作为下一个处理元素的输入数据)。
功能内聚:如果模块内所有处理元素属于一个整体,完成一个单一的功能。
数据耦合:如果两个模块彼此间通过参数交换信息,而且交换的信息仅仅是数据。
控制耦合:如果传递的信息中有控制信息(尽管有时这种控制信息以数据的形式出现)。
特征耦合:当整个数据结构作为参数传递而被调用的模块只需要使用其中一部份数据元素
时。
公共环境耦合:当两个或多个模块通过一个公共数据环境相互作用时。
内容耦合:
一个模块访问另一个模块的内部数据。
一个模块不通过正常入口而转到另一个模块的内部。
两个模块有一部份程序代码重叠(只可能出现在汇编程序中)。
一个模块有多个入口(这意味着一个模块有几种功能)。
Created by cherish58,2010