java程序的耦合度是什么

java程序的耦合度是什么,第1张

程序的耦合度是 你的子程序之间的相关联性,也就是说你的多个类的联系 是否太紧密,打个比方,你房子里边有窗子 ,那房子山兄顷 和窗子 就有了关联

耦合度 是松还是紧 就看你的 关联 是强还是弱,也就是修改的代价,比如 你窗子是扣死在墙里的 那么你修改窗子 就必须修改墙 这就比较紧密了,但是如果你窗子是按照某种规格的 可以自由拆装的 那么修改的代价就小,耦合度也就低了

我们写程序的目逗陆标就是 高尘肢内聚 低耦合!

这样修改起来 就不会有太多的联系 不用 改一个地方 其他的都要修改

耦合性(英语:Coupling,dependency,或称耦纯戚塌合力或耦合度)是一种软件度量,是指一程序中,模块及模块之间信息或参数依赖的程度。内聚性是一个和耦合性相对的概念,一般而言低耦合性代表高内聚性,反之亦然。耦合性和内聚性都是由提出结构化设计概念的赖瑞·康斯坦丁所提出。低耦合性是结构良好程序的特性,低耦合性程序的可读性及可维护性会比较好。

耦合性可以是低耦合性(或称为松散耦合),也可以是高耦合性(或称为紧密耦合)。以下列出一些耦合性的分类,从高到低依序排列:

内容耦合(content coupling,耦合度最高)

也称为病态耦合(pathological coupling)仔举当一个模块直接使用另一个模块的内部数据,或通过非正常入口而转入另一个模块内部。

共用耦合/公共耦合(common coupling)

也称为全局耦合(global coupling.)指通过一个公共数据环境相互作用的那些模块间的耦合。公共耦合的复杂程序随耦合模块的个数增加而增加。

外部耦合(external coupling)

发生在二个模块共用一个外加的数据格式、通信协议或是设备界面,基本上和模块和外部工具及设备的沟通有关。

控制耦合(control coupling)

指一个模块调用另一个模块时,传递的是控制变量(如开关、标志等),被调模块通过该控制变量的值有选择地执行块内某一功能

特征耦合/标记耦合(stamp coupling)

也称为数据结构耦合,是指几个模块共享一个复杂的数据结构,如高级语言中的数组名、记录名、文件名等这些名字即标记,其实传递的是这个数据结构的地址

数据耦合/数据耦合(data coupling)

是指模块借由传入值共享数据,每一个数据都是最基本的数据,而且只分享这些数据(例如传递一个整数给计算平方根的函数)。

消息耦合(message coupling,是无耦合之外,耦合度最低的耦合)

可以借由以下二个方式达成:状态的去中心化(例如在对象中),组件间利用传入值或消息传递 (计做圆算机科学)来通信。

无耦合:模块完全不和其他模块交换信息。

内聚性:又称块内联系,指模块的功能强度的度量,即一个模告大块内部各个元素彼此结合的紧密程度的度量。

耦合性也叫耦合度,是对模块间关联程度的度量。耦合的强弱取决与模块间接口的复杂性、调用模块的方式以及通过界面传送数据的多少。

内聚性特性:

内聚性是对一个模块内部各个组成元素之间相互结合的紧密程度的度量指标。模块中组成元素结合的越紧密,模块的内聚性就越高,模块的独立性也就越高。理想的内聚性要求模块的功能应明确、单一,即一个模块只做一件事情。模块的内聚性和袜渗竖耦合性是两个相互对立且又密切相关的概念。

耦合性特性:

模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。模块间联系越多,其耦合性越强,同时表明其独立性越差。软件设计中通常用耦合度喊蠢和内聚度作为衡量模块独立程度的标准。划分模块的一个准则就是高内聚低耦合。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12501064.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存