内聚耦合软件工程

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

内聚的类型

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

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

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

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

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

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

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

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

内聚性的设计原则

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

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

相关推荐
stars-he21 分钟前
FPGA学习笔记(7)以太网UDP数据报文发送电路设计(一)
笔记·网络协议·学习·fpga开发·udp
lkbhua莱克瓦2443 分钟前
基础-SQL-DML
开发语言·数据库·笔记·sql·mysql
Aliex_git1 小时前
Vue2 - Watch 侦听器源码理解
前端·javascript·vue.js·笔记·学习
Aliex_git1 小时前
HTTP 协议发展整理
笔记·网络协议·http
love530love2 小时前
【笔记】ComfyUI 启动时端口被占用(PermissionError [winerror 10013])解决方案
人工智能·windows·笔记·stable diffusion·aigc·端口·comfyui
YJlio2 小时前
DiskView 学习笔记(13.3):用扇区视图看磁盘——热点盘块、碎片与健康排查
java·笔记·学习
QT 小鲜肉2 小时前
【Linux命令大全】001.文件管理之mdu命令(实操篇)
linux·运维·服务器·chrome·笔记·microsoft
im_AMBER2 小时前
数据结构 14 【复习】二叉树中序遍历 | 线索二叉树 | 树、森林、二叉树的转换 | 层次遍历二叉树
数据结构·笔记·学习·算法
im_AMBER2 小时前
Leetcode 88 K 和数对的最大数目
数据结构·c++·笔记·学习·算法·leetcode
代码猪猪傻瓜coding2 小时前
IEEE 模版 作者传记间距过大问题
笔记