欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

高内聚低耦合

程序员文章站 2024-03-14 21:21:29
...

多线程学习

明确一点,一个程序如果是高内聚零耦合会是最完美的,但是没有绝对的零耦合。也就不存在什么完美的程序了。
1 什么是高内聚/低耦合?

首先了解什么是内聚/耦合
1.1.1 内聚性:每一个程序中可能会按照不同功能,将整个代码段划分为不同的模块,每一个模块内部元素彼此之间会有某些联系,此种联系就是内聚性。同一个模块中元素联系越加紧密,那就意味着其内聚性就高,反之则不然。

1.1.2 耦合性:除过模块内部的联系外,模块之间也有一些关系,这种关系就是所谓的耦合性,模块之间相互影响的力度愈大耦合性就越强。反之则亦然。

**1.2 **高内聚低耦合:也就是说一个具体的事物,在其具体模块内部元素彼此之间关系紧密,而模块之间的影响十分小。正是对应着模块内、模块间的关系进行相关评估的结果描述。

举个栗子,现在有两个大团队,一为A,一为B;A中有A1、A2、A3等多个小的团队,B中也是有着多个团队。现在有一个功能要求A、B两个团队合作完成;讨论:

首先给定以下两种结果:
高耦合:A、B两个大团队之间的结果相互影响或者其一牵制另一个,进而形成高耦合;
高内聚:A、B两个团队中的每一个小组之间相互团结合作,每一个小组实现的具体功能相互影响,而最终实现本组所负责的部分功能,此能够体现高内聚性;
低内聚低耦合反之即可。对应的组合既能够达到高内聚低耦合要求。

在一定时候,内聚和耦合之间也存在相互牵制的效果,一定程度上,内聚性的增强一定程度上会降低耦合性。
无论是想要实现高内聚、低耦合都需要花费一定的时间从各个方向出发去思考设计;这可能也在一方面体现了算法的精妙之处吧,只是一个较为简单的思路便可能减少很多不必要的开支。

仍在持续更新学习中,如有错误,欢迎指正!!

相关标签: 高内聚低耦合