首页 > 试题广场 >

高内聚和低耦合,下面哪个耦合度最高?

[单选题]
高内聚和低耦合,下面哪个耦合度最高?
  • 通过函数参数传递
  • 一个函数修改另外一个函数中的数据
  • 通过全局变量
  • 通过指示器
“最”字竟然有多个答案...虽然是不定项
发表于 2016-02-02 23:42:23 回复(1)
kou头像 kou
b应该是内容耦合,c是公共耦合吧,所以最高不应该是b吗? 知识点: 耦合可以分为以下几种,它们之间的耦合度由高到低排列如下: (1) 内容耦合:有下列情形之一,两个模块就发生了内容耦合: *一个模块访问另一个模块的内部数据 *一个模块不通过正常入口而转到另一个模块的内部 *一个模块有多个入口 (2) 公共耦合:当两个或多个模块通过公共数据环境相互作用时,他们之间的耦合称为公共环境耦合。 (3) 控制耦合:如果两个模块通过参数交换信息,交换的信息有控制信息,那么这种耦合就是控制耦合。 (4) 特征耦合:如果被调用的模块需要使用作为参数传递进来的数据结构中的所有数据时,那么把这个数据结构作为参数整体传送是完全正确的。但是,当把整个数据结构作为参数传递而使用其中一部分数据元素时,就出现了特征耦合。在这种情况下,被调用的模块可以使用的数据多于它确实需要的数据,这将导致对数据的访问失去控制,从而给计算机犯错误提供机会。 (5) 数据耦合:如果两个模块通过参数交换信息,而且交换的信息仅仅是数据,那么这种耦合就是数据耦合。 内聚有如下的种类,它们之间的内聚度由弱到强排列如下: (1) 偶然内聚:模块中的代码无法定义其不同功能的调用。但它使该模块能执行不同的功能,这种模块称为巧合强度模块。 (2) 逻辑内聚。这种模块把几种相关的功能组合在一起, 每次被调用时,由传送给模块参数来确定该模块应完成哪一种功能  (3) 时间内聚:把需要同时执行的动作组合在一起形成的模块为时间内聚模块。  (4) 过程内聚:构件或者操作的组合方式是,允许在调用前面的构件或操作之后,马上调用后面的构件或操作,即使两者之间没有数据进行传递。  (5) 通信内聚:指模块内所有处理元素都在同一个数据结构上操作(有时称之为信息内聚),或者指各处理使用相同的输入数据或者产生相同的输出数据。  (6) 顺序内聚:指一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素输出就是下一功能元素的输入。 (7) 功能内聚:共同完成同一功能,缺一不可,模块不可再分割
编辑于 2016-08-17 17:44:06 回复(0)
B最高的吗?不是
发表于 2015-11-30 19:10:22 回复(0)
指示器是啥

发表于 2018-02-10 11:58:21 回复(0)
耦合可以分为以下几种,它们之间的耦合度由高到低排列如下:
(1) 内容耦合:有下列情形之一,两个模块就发生了内容耦合:
*一个模块访问另一个模块的内部数据
*一个模块不通过正常入口而转到另一个模块的内部
*一个模块有多个入口
(2) 公共耦合:当两个或多个模块通过公共数据环境相互作用时,他们之间的耦合称为公共环境耦合。
(3) 控制耦合:如果两个模块通过参数交换信息,交换的信息有控制信息,那么这种耦合就是控制耦合。
(4) 特征耦合:如果被调用的模块需要使用作为参数传递进来的数据结构中的所有数据时,那么把这个数据结构作为参数整体传送是完全正确的。但是,当把整个数据结构作为参数传递而使用其中一部分数据元素时,就出现了特征耦合。在这种情况下,被调用的模块可以使用的数据多于它确实需要的数据,这将导致对数据的访问失去控制,从而给计算机犯错误提供机会。
(5) 数据耦合:如果两个模块通过参数交换信息,而且交换的信息仅仅是数据,那么这种耦合就是数据耦合。
内聚有如下的种类,它们之间的内聚度由弱到强排列如下:
(1) 偶然内聚:模块中的代码无法定义其不同功能的调用。但它使该模块能执行不同的功能,这种模块称为巧合强度模块。
(2) 逻辑内聚。这种模块把几种相关的功能组合在一起, 每次被调用时,由传送给模块参数来确定该模块应完成哪一种功能 
(3) 时间内聚:把需要同时执行的动作组合在一起形成的模块为时间内聚模块。 
(4) 过程内聚:构件或者操作的组合方式是,允许在调用前面的构件或操作之后,马上调用后面的构件或操作,即使两者之间没有数据进行传递。 
(5) 通信内聚:指模块内所有处理元素都在同一个数据结构上操作(有时称之为信息内聚),或者指各处理使用相同的输入数据或者产生相同的输出数据。 
(6) 顺序内聚:指一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素输出就是下一功能元素的输入。
(7) 功能内聚:共同完成同一功能,缺一不可,模块不可再分割
发表于 2015-09-05 16:55:58 回复(1)
高耦合,低内聚
发表于 2020-03-26 17:33:21 回复(0)
答案只有B 
B选项是内容耦合耦合程度最高,应该坚决避免
C选项是公共环境耦合,即多个模块通过一个公共数据环境相互作用
耦合是影响软件复杂度的一个重要因素,应该采以下设计原则:
尽量使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合范围,完全不用内容耦合
发表于 2017-01-02 13:40:40 回复(0)
B
发表于 2015-03-30 11:38:19 回复(0)
B.
 内容耦合:有下列情形之一,两个模块就发生了内容耦合:
*一个模块访问另一个模块的内部数据
*一个模块不通过正常入口而转到另一个模块的内部
*一个模块有多个入口
发表于 2015-03-11 09:28:22 回复(0)