内聚(cohesion)是指组成一个模块的各元素彼此之间的结合力度。一个具有很好内聚力的模块在执行某些功能时非常有效率,因为其中的相关元素已经结合在一起,而不必跨越模块的边界寻找必要的信息。
内聚性标准通常涉及元素之间进行交流的频率,内部任务逻辑的相对性质,共享的状态和数据等因素。因此,高度内聚性的模块具有低耦合性并且是模块化设计中的最细颗粒度単位。在软件设计领域,一般推崇轻耦合和高内聚以便在技术上容易维护和管理。
内聚度被分为以下几个级别:
- 偶然内聚(Coincidental Cohesion):没有逻辑关联的几个元素被组合在一起。
- 逻辑内聚(Logical Cohesion):功能相关的元素被组合在一起。
- 时间内聚(Temporal Cohesion):在特定时间段内需要执行的元素被组合在一起。
- 过程内聚(Procedural Cohesion):完成相同过程中的元素被组合在一起。
- 通信内聚(Communicational Cohesion):彼此只相互通信的元素被组合在一起,常常是由同一个对外接口在不同的时候访问。
- 顺序内聚(Sequential Cohesion):按顺序的方式排列元素。
- 功能内聚(Functional Cohesion):只执行一个功能的元素被组合在一起。
从上述内聚度级别可以发现,越往后级别升高,各元素之间的关联性就越强。在设计软件时,应根据任务和目的来选择最适合的内聚度级别。
内聚的概念 also can be applied to other fields,例如组织和社区方面的内聚概念。在这些领域,内聚研究的是一个群体内各个成员之间的联系程度,以及这些成员对这个群体所产生的影响等。这些关系的强度决定了人际关系、团队团结以及群体凝聚力等方面的发展。
总之,内聚可以用来描述事物内部元素之间的依赖关系。无论是指软件设计领域还是其他领域,内聚都是构建健康且强大的系统的重要部分。
扫码咨询 领取资料