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

项目架构中的耦合性和内聚性

程序员文章站 2022-07-13 16:41:43
...

        耦合性(Coupling),也叫耦合度,或者块间联系,是对系统结构中各模块间相互联系紧密程度的一种度量。耦合的强弱取决于模块间接口的复杂性、调用模块的方式以及通过界面传送数据的多少。模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。模块间联系越多,其耦合性越强,同时表明其独立性越差( 降低耦合性,可以提高其独立性)。

       内聚性是一个模块内部各个元素之间彼此结合的紧密程度的度量,内聚从功能角度开度量模块内的联系;耦合性事模块间互相连接的紧密程度的度量,它反映了模块的独立性,也反映了系统分解后的复杂程度。因此高内聚,低耦合有利于提高模块的独立性。

       软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准。划分模块的一个准则就是高内聚低耦合。

       以上这些都是一些比较标准的描述语言,现在个人从项目实践上发表一些见解,仅作为自己个人知识层面的积累,欢迎指正。当我们程序耦合性高的时候,会在一个模块写很多关联模块的逻辑,这样的话,如果这一个模块出了问题,那么就会导致内置在这个模块的其它关联模块的功能都无法使用,这样会导致整个项目的崩溃。而降低耦合性,分模块处理,将一个个复杂的模块独立开来,这样模块之间影响会随之减小,首先方便系统的维护与拓展,让整个项目看起来更清晰;其次当模块出现问题的时候,相互独立的模块会互不影响,相当于对相应的模块服务化,需要用哪个模块,调用哪个模块的服务和接口就行,一个模块出问题,其它模块不会受到影响,这样可以使项目各模块独立开来,影响最小化。