(2)数据耦合 模块调用另一模块 时,被调用模块的输入 输出都是简单的数据(若干 属松散耦合
(2) 数据耦合 一模块调用另一模块 时,被调用模块的输入、 输出都是简单的数据(若干 参数)。 属松散耦合
数据耦合举例 开发票 单价 数量 金额 计算水费
数据耦合举例 开发票 计算水费 单价 数量 金额
(3)标记耦合(特征耦合) 如两个模块通过传递数据结构 (不是简单数据,而是记录、数组 等)加以联系,或都与一个数据 结构有关系,则称这两个模块 间存在标记偶合
(3) 标记耦合(特征耦合) 如两个模块通过传递数据结构 (不是简单数据,而是记录、数组 等)加以联系,或都与一个数据 结构有关系, 则称这两个模块 间存在标记偶合
标记耦合举例 计算水电费 住户情况∥水费 住户情况 电费 计算水费 计算电费 “住户情况”是一个数据结构,图中模块都 与此数据结构有关 “计算水费”和“计算电费”本无关,由于 引用了此数据结构产生依赖关系,它们之间 也是标记偶合
标记耦合举例 计算水电费 计算水费 计算电费 住户情况 水费 电费 住户情况 “住户情况”是一个数据结构,图中模块都 与此数据结构有关. “计算水费”和“计算电费”本无关,由于 引用了此数据结构产生依赖关系,它们之间 也是标记偶合
将标记耦合修改为数据耦合举例 计算水电费 本月 本月 用水量/水费 用电量 电费 计算水费 计算电费
将标记耦合修改为数据耦合举例 计算水电费 计算水费 计算电费 本月 用水量 本月 水费 用电量 电费