高内聚低耦合的理解

简介: 哪里都讲高内聚低耦合,什么叫高内聚低耦合,这里做一些记录,方便查阅。高内聚低耦合,是软件工程中的概念,是判断设计好坏的标准,主要是面向对象的设计,主要是看类的内聚性是否高,耦合度是否低。耦合性:也称块间联系。

哪里都讲高内聚低耦合,什么叫高内聚低耦合,这里做一些记录,方便查阅。

高内聚低耦合,是软件工程中的概念,是判断设计好坏的标准,主要是面向对象的设计,主要是看类的内聚性是否高,耦合度是否低。

耦合性:也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息。
 
内聚性:又称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。若一个模块内各元素(语名之间、程序段之间)联系的越紧密,则它的内聚性就越高。
 
所谓高内聚是指一个软件模块是由相关性很强的代码组成,只负责一项任务,也就是常说的单一责任原则。
 
耦合:一个软件结构内不同模块之间互连程度的度量。
 
对于低耦合,粗浅的理解是:一个完整的系统,模块与模块之间,尽可能的使其独立存在。也就是说,让每个模块,尽可能的独立完成某个特定的子功能。模块与模块之间的接口,尽量的少而简单。如果某两个模块间的关系比较复杂的话,最好首先考虑进一步的模块划分。这样有利于修改和组合。
 
为了便于理解,这里借用网络同仁的一个例子:一个程序有50个函数,这个程序执行得非常好;然而一旦你修改其中一个函数,其他49个函数都需要做修改,这就是高耦合的后果。
 
理解高内聚低耦合的含义后,在做程序设计的时候,我们就可以做一些刻意的考虑,写出高质量的代码。
目录
相关文章
|
JSON 数据库 数据格式
|
6月前
软件复杂度问题之什么是高内聚低耦合设计,实现一个高内聚低耦合的接口该如何解决
软件复杂度问题之什么是高内聚低耦合设计,实现一个高内聚低耦合的接口该如何解决
|
8月前
模块功能高内聚低耦合
模块功能高内聚低耦合
79 1
|
8月前
软件设计原则:耦合与内聚
软件设计原则:耦合与内聚
191 0
|
设计模式 网络协议 测试技术
你的代码是否按照高内聚、低耦合的原则来设计的?
你的代码是否按照高内聚、低耦合的原则来设计的?
|
存储 安全 程序员
软件工程的耦合和内聚
软件工程的耦合和内聚
287 0
|
设计模式
单一职责原则|设计原则
本文带大家学习和了解第一种设计原则,单一职责原则
|
前端开发 测试技术
高内聚
最近一季度KPI中,增加了一项单元测试覆盖率 在之前工作经历中,也有过类似情况,老板开始关注单元测试情况了,就会加上覆盖率这个绩效指标,不管以前如何应对,还是再次关注了一些对于测试的文章,TDD虽然没有大流行,但这个概念还是常被人提起
137 0
高内聚
|
设计模式 网络协议 程序员
没项目经历的安酱,连低耦合高内聚都不懂...
没项目经历的安酱,连低耦合高内聚都不懂...
没项目经历的安酱,连低耦合高内聚都不懂...