设计原理1

5.4 总体设计 - 设计原理之内聚

内聚

内聚(Cohesion)是衡量一个模块内各个元素彼此结合紧密程度的指标,也是模块功能强度的度量。内聚度越高,模块独立性越强。

内聚类型

1. 偶然内聚(Coincidental Cohesion)
  • 定义:模块内各部分之间没有联系或联系松散。
  • 问题
    • 不易修改和维护。
    • 内容不易理解。
    • 可能将程序段分割到多个模块,导致频繁互相调用。
2. 逻辑内聚(Logical Cohesion)
  • 定义:将几种相关功能组合在一起,通过传递的参数来决定执行哪种功能。
  • 问题
    • 不执行单一功能,修改困难。
    • 需要传递控制参数,形成控制耦合。
    • 将未用部分调入内存,降低系统效率。
3. 时间内聚(Classical Cohesion)
  • 定义:模块为多功能,各功能执行与时间有关,通常在同一时间段内执行。
  • 优点:比逻辑内聚强,内部逻辑判定转移少。
  • 注意:需注意时序问题。
4. 过程内聚(Procedural Cohesion)
  • 定义:使用流程图设计程序时,流程图中某部分划出组成模块。
  • 问题:仅包含完整功能的一部分,内聚度低,耦合度高。
5. 通信内聚(Communicational Cohesion)
  • 定义:模块内各功能部分使用相同的输入数据或产生相同的输出数据。
  • 优点:内聚度高。
  • 问题:可能破坏功能独立性。
6. 顺序内聚(Sequential Cohesion)
  • 定义:模块内处理元素顺序执行,一个元素的输出作为下一个的输入。
  • 来源:通常由数据流图划分得到。
7. 功能内聚(Functional Cohesion)
  • 定义:模块中所有部分协同工作完成一项具体功能。
  • 优点:易于修改和维护,功能明确,耦合简单。
  • 10
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大嘤三喵军团

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值