内聚耦合软件工程

内聚是软件工程中用来描述一个模块内部各个元素彼此结合的紧密程度的度量指标。它对于模块的独立性和可维护性有着重要影响。

内聚的类型

内聚性可以从低到高分为以下几种类型:

  1. 偶然内聚:模块内的各处理元素之间没有任何联系。这种内聚性最弱。

  2. 逻辑内聚:模块内执行几个逻辑上相关的功能,通过参数确定该模块完成哪一个功能。

  3. 时间内聚:把需要同时或顺序执行的动作组合在一起形成的模块为时间内聚模块。

  4. 过程内聚:如果一个模块内的处理元素是相关的,而且必须以待定次序执行,则称为过程内聚。

  5. 通信内聚:指模块内所有处理功能都通过使用公用数据发生关系。

  6. 顺序内聚:一个模块中各个处理元素和同一个功能密切相关,而且这些处理必须顺序执行。

  7. 功能内聚:模块内所有元素共同完成一个功能,缺一不可,模块已不可再分。这是最强的内聚。

内聚性的设计原则

  • 高内聚:在设计时应尽量追求高内聚,即模块的功能明确且单一。高内聚的模块独立性强,易于理解和维护。

  • 低耦合:与高内聚相对应,低耦合指的是模块之间的依赖关系尽量少,这有助于减少修改一个模块对其他模块的影响,提高系统的可维护性。

相关推荐
小赵AI手记1 小时前
技术拆解(十七)具身智能:机器人动作生成为何走向Diffusion Policy?
人工智能·笔记·python·机器人
疯狂打码的少年2 小时前
【数据结构】二叉排序树(BST)的定义与操作
数据结构·笔记·算法
蒸蒸yyyyzwd2 小时前
后端面经学习笔记
笔记·学习
简简单单lym2 小时前
mediasou c++分析--流分析
笔记·webrtc
糖炒栗子03263 小时前
learn-claude-code 简要记录
笔记·python
PC2005-cloud4 小时前
Elasticsearch 学习笔记:集群实战(3 控制节点 + 3 数据节点部署与故障转移)
笔记·学习·elasticsearch
头茬韭菜4 小时前
功能点 1:项目骨架与启动流程 —— 源码阅读笔记
运维·笔记·debian·fluss
墨雨晨曦884 小时前
2026/08/16 AI学习笔记
笔记·学习
CarIise5 小时前
C语言基础课程笔记:硬件原理、数据类型、结构体与格式化输入输出详解
c语言·开发语言·笔记
今儿敲了吗6 小时前
CN——数据链路层(下)
网络·笔记