内聚耦合软件工程

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

内聚的类型

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

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

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

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

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

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

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

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

内聚性的设计原则

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

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

相关推荐
Xudde.5 小时前
班级作业笔记报告0x04
笔记·学习·安全·web安全·php
zzh0818 小时前
MySQL高可用集群笔记
数据库·笔记·mysql
绛橘色的日落(。・∀・)ノ8 小时前
Matplotlib实践学习笔记
笔记·学习
chase。8 小时前
【学习笔记】AGILE:把人形机器人强化学习从“玄学”变成“工程学”
笔记·学习·敏捷流程
久菜盒子工作室8 小时前
高等教育学|第一章高等教育概述
经验分享·笔记·课程设计
tq10869 小时前
语言流形与思维共生:中西认知图景的差异与交融
笔记
YuanDaima20489 小时前
基于 LangChain 1.0 的检索增强生成(RAG)实战
人工智能·笔记·python·langchain·个人开发·langgraph
_李小白9 小时前
【OSG学习笔记】Day 31: 渲染到纹理(RTT)
笔记·数码相机·学习
练习时长一年11 小时前
我的开发笔记
笔记
生瓜硬劈..12 小时前
SQL 调优全解:从 20 s 到 200 ms 的 6 步实战笔记
java·笔记·sql