早教吧 育儿知识 作业答案 考试题库 百科 知识分享

下列模块的耦合方式中,耦合行最好的是?A内容耦合B模块耦合C特征耦合D公共耦合

题目详情
下列模块的耦合方式中,耦合行最好的是?
A 内容耦合 B 模块耦合 C 特征耦合 D 公共耦合
▼优质解答
答案和解析
看你是什么了,怎么使用来确定了,你说的有些笼统,以下是关于一些耦合的知识.你自己看一下吧. 非直接耦合:两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的.
  数据耦合:一个模块访问另一个模块时,彼此之间是通过简单数据参数 (不是控制参数、公共数据结构或外部变量) 来交换输入、输出信息的.
  标记耦合:一组模块通过参数表传递记录信息,就是标记耦合.这个记录是某一数据结构的子结构,而不是简单变量.其实传递的是这个数据结构的地址;
  控制耦合:如果一个模块通过传送开关、标志、名字等控制信息,明显地控制选择另一模块的功能,就是控制耦合.
  外部耦合:一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递该全局变量的信息,则称之为外部耦合.
  公共耦合:若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合.公共的数据环境可以是全局数据结构、共享的通信区、内存的公共覆盖区等.
  内容耦合:如果发生下列情形,两个模块之间就发生了内容耦合
  (1) 一个模块直接访问另一个模块的内部数据;
  (2) 一个模块不通过正常入口转到另一模块内部;
  (3) 两个模块有一部分程序代码重叠(只可能出现在汇编语言中);
  (4) 一个模块有多个入口.
  耦合强度,依赖于以下几个因素:
  (1)一个模块对另一个模块的调用;
  (2)一个模块向另一个模块传递的数据量;
  (3)一个模块施加到另一个模块的控制的多少;
  (4)模块之间接口的复杂程度.
  耦合按从强到弱的顺序可分为以下几种类型:
  (1)内容耦合.当一个模块直接修改或操作另一个模块的数据,或者直接转入另一个模块时,就发生了内容耦合.此时,被修改的模块完全依赖于修改它的模块.这是最高程度的耦合,也是最差的耦合.
  (2)公共耦合.两个以上的模块共同引用一个全局数据项就称为公共耦合.
  (3)控制耦合.一个模块在界面上传递一个信号(如开关值、标志量等)控制另一个模块,接收信号的模块的动作根据信号值进行调整,称为控制耦合.
  (4)标记耦合.模块间通过参数传递复杂的内部数据结构,称为标记耦合.此数据结构的变化将使相关的模块发生变化.
  (5)数据耦合.模块间通过参数传递基本类型的数据,称为数据耦合.
  (6)非直接耦合.模块间没有信息传递时,属于非直接耦合.
  如果模块间必须存在耦合,就尽量使用数据耦合,少用控制耦合,限制公共耦合的范围,坚决避免使用内容耦合.
看了下列模块的耦合方式中,耦合行最...的网友还看了以下: