黑马程序员技术交流社区

标题: 什么是代码的耦合度 [打印本页]

作者: 张海川    时间: 2012-9-17 09:01
标题: 什么是代码的耦合度
本帖最后由 张海川 于 2012-9-18 08:19 编辑

书上的讲的不好理解

作者: 孔德智    时间: 2012-9-17 09:11
耦合度是指模块之间联系的紧密程度。耦合de强弱直接影响软件的维护和升级。耦合的强弱叫做耦合度。我们的软件工程里面一个基本原则是高内聚,低耦合。但是没有耦合的系统是不存在的。因为各个模块要互相辅助才能完成一个真正的系统,所以现在好多说法是降低耦合,而没有那种说取消耦合的说法了。
模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。模块间联系越多,其耦合性越强,同时表明其独立性越差。降低模块间的耦合度能减少模块间的影响,防止对某一模块修改所引起的“牵一发动全身”的水波效应,保证系统设计顺利进行。
两个模块之间的耦合方式通常可分为7种,按其耦合度从低到高的次序依此为:非直接耦合、数据耦合、标记耦合、控制耦合、外部耦合、公共耦合、内容耦合。
内聚度是指内部各元素之间联系的紧密程度,模块的内聚种类通常可分为7种,按其内聚度从低到高的次序依此为:偶然内聚、逻辑内聚、瞬时内聚、过程内聚、通信内聚、顺序内聚、功能内聚。

作者: 许庭洲    时间: 2012-9-17 09:17
1.六大耦合:
   无直接耦合-> 数据耦合-> 标记耦合-> 开关耦合-> 公共耦合-> 内容耦合
2.耦合度到底多低合适,需要看你这两个模块的亲密度如何。
3.降低耦合的最好方法就是把过程細化;
4. 建议看计算机大四发的软件工程书籍这本书中讲的比较详细!



作者: 霍永刚    时间: 2012-9-17 09:18
在java中有高内聚低耦合:
首先要知道一个软件是由多个子程序组装而成, 而一个程序由多个模块(方法)构成! 而内聚就是指程序内的各个模块之间的关系紧密程度, 偶合就是各个外部程序(子程序)之间的关系紧密程度. 所以很易明白,为什么要高内聚?模块之间的关系越紧密,出错就越少!低偶合?子程序间的关系越复杂,就会产生更多的意想不到的错误!会给以后的维护工作带来很多麻烦! 希望能帮助你!
作者: 张海川    时间: 2012-9-17 09:31
ok,谢谢回答
作者: 张青江    时间: 2012-9-17 13:58
无独有偶!三楼的回答会让你满意,一般这种概念性的东西得多看书才能理解
作者: 王锋华    时间: 2012-9-17 22:13
就是改了一个地方   要改好多其他地方
互相影响的越多   耦合度越高   越不好
作者: 侍小波    时间: 2012-9-25 18:31
码的耦合度,是指代码中的单元代码的紧密程度,其中一个单元代码的更改对其它单元代码的影响力与作用。代码间的耦合度越高,系统就在变动时就更加难以控制,但并非不能控制,只是你将为此付出巨大的代价。






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2