积木首页 - 学院 - 软件测试 - 技术百科 - 问答 - 黄页 - 手册 - 站长工具 - 社区
登录 | 注册
    全站
技术百科 >> 耦合

耦合

  耦合是指两个或两个以上的电路元件或电网络的输入与输出之间存在紧密配合与相互影响,并通过相互作用从一侧向另一侧传输能量的现象;概括的说耦合就是指两个或两个以上的实体相互依赖于对方的一个量度。分为以下几种:
  非直接耦合:两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的。
  数据耦合:一个模块访问另一个模块时,彼此之间是通过简单数据参数 (不是控制参数、公共数据结构或外部变量) 来交换输入、输出信息的。
  标记耦合 :一组模块通过参数表传递记录信息,就是标记耦合。这个记录是某一数据结构的子结构,而不是简单变量。其实传递的是这个数据结构的地址;
  控制耦合:如果一个模块通过传送开关、标志、名字等控制信息,明显地控制选择另一模块的功能,就是控制耦合。
  外部耦合:一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递该全局变量的信息,则称之为外部耦合。
  公共耦合:若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合。公共的数据环境可以是全局数据结构、共享的通信区、内存的公共覆盖区等。
  内容耦合:如果发生下列情形,两个模块之间就发生了内容耦合
  (1) 一个模块直接访问另一个模块的内部数据;
  (2) 一个模块不通过正常入口转到另一模块内部;
  (3) 两个模块有一部分程序代码重叠(只可能出现在汇编语言中);
  (4) 一个模块有多个入口。
  耦合强度,依赖于以下几个因素:
  (1)一个模块对另一个模块的调用;
  (2)一个模块向另一个模块传递的数据量;
  (3)一个模块施加到另一个模块的控制的多少;
  (4)模块之间接口的复杂程度。
  耦合按从强到弱的顺序可分为以下几种类型:
  (1)内容耦合。当一个模块直接修改或操作另一个模块的数据,或者直接转入另一个模块时,就发生了内容耦合。此时,被修改的模块完全依赖于修改它的模块。这是最高程度的耦合,也是最差的耦合。
  (2)公共耦合。两个以上的模块共同引用一个全局数据项就称为公共耦合。
  (3)控制耦合。一个模块在界面上传递一个信号(如开关值、标志量等)控制另一个模块,接收信号的模块的动作根据信号值进行调整,称为控制耦合。
  (4)标记耦合。模块间通过参数传递复杂的内部数据结构,称为标记耦合。此数据结构的变化将使相关的模块发生变化。
  (5)数据耦合。模块间通过参数传递基本类型的数据,称为数据耦合。
  (6)非直接耦合。模块间没有信息传递时,属于非直接耦合。
  如果模块间必须存在耦合,就尽量使用数据耦合,少用控制耦合,限制公共耦合的范围,坚决避免使用内容耦合。
  -----------------------------------------------------------------------------------------------------------------
  软件工程中的耦合:
  简单地说,对象之间的耦合度就是对象之间的依赖性。指导使用和维护对象的主要问题是对象之间的多重依赖性。对象之间的耦合越高,维护成本越高。因此对象的设计应使类和构件之间的耦合最小。
  就是依赖性,相关性吧!!!
  有软硬件之间的耦合,还有软件各模块之间的耦合。
  耦合性是程序结构中各个模块之间相互关联的度量.它取决于各个模块之间的接口的复杂程度、调用模块的方式以及哪些信息通过接口.一般模块之间可能的连接方式有七种,耦合性由低到高分别是:非直接耦合、数据耦合、标记耦合、控制耦合、外部耦合、公共耦合、内容耦合。
  耦合是对一个软件结构内各个模块之间互连程度的度量。
  内聚标志一个模块内各个元素彼此结合的紧密程度,它是信息隐蔽和局部化概念的自然扩展。
  1. 什么是内聚?什么是耦合?
  内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事。它描述
  的是模块内的功能联系; 耦合是软件结构中各模块之间相互连接的一种度量,耦合强弱取决
  于模块间接口的复杂程度、进入或访问一个模块的点以及通过接口的数据。
  2. 内聚分为哪几类?耦合分为哪几类?
  内聚有如下的种类,它们之间的内聚度由弱到强排列如下:
  (1) 偶然内聚。模块中的代码无法定义其不同功能的调用。但它使该模块能执行不同
  的功能,这种模块称为巧合强度模块。
  (2) 逻辑内聚。这种模块把几种相关的功能组合在一起, 每次被调用时,由传送给模
  块参数来确定该模块应完成哪一种功能
  (3) 时间内聚
  (4) 过程内聚
  (5) 通信内聚
  (6) 顺序内聚
  (7) 功能内聚
  耦合可以分为以下几种,它们之间的耦合度由高到低排列如下:
  (1) 内容耦合
  (2) 公共耦合
  (3) 外部耦合
  (4) 控制耦合
  (5) 标记耦合
  (6) 数据耦合
  (7) 非直接耦合
  3.什么是时间内聚?什么是公共耦合?
  时间内聚。这种模块顺序完成一类相关功能,比如初始化模块,它顺序为变量置初值。
  如一组模块都访问同一全局数据结构,则称之为公共耦合。
  ................................................................................................
  振动模式的耦合与解耦
  耦合是指两个振动模态在某一振动模态下(或在某一广义坐标方向上)的振动输入,导致另一振动模态下(或另一广义坐标方向上)的响应。使耦合分离称为解耦。解耦的目的是使各个自由度上(即各振动模态)的振动相对独立或分离,这样可对隔振效果不佳的自由度独立采取措施而不影响其他自由度方向上的有关性能。当各自由度独立后,可能产生共振的频率比存在耦合时要小,特别在激振能量大的方向上要保证解耦。
  多场耦合
  现实工程中,物理场是许多的,温度场,应力场,湿度场等等均属于物理场,而我们要解决的许多问题是这些物理场的叠加问题,因为这些物理场直接是相互影响的。比如炼钢的时候温度高低对于应力分布就有影响。
  这种多个物理场相互叠加的问题就叫做多场耦合问题,也是一种耦合.
  耦合是指两个实体相互依赖于对方的一个量度.分为以下几种:
  非直接耦合:两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的
  数据耦合:一个模块访问另一个模块时,彼此之间是通过简单数据参数 (不是控制参数、公共数据结构或外部变量) 来交换输入、输出信息的。
  标记耦合 :一组模块通过参数表传递记录信息,就是标记耦合。这个记录是某一数据结构的子结构,而不是简单变量。
  控制耦合:如果一个模块通过传送开关、标志、名字等控制信息,明显地控制选择另一模块的功能,就是控制耦合。
  外部耦合:一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递该全局变量的信息,则称之为外部耦合。
  公共耦合:若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合。公共的数据环境可以是全局数据结构、共享的通信区、内存的公共覆盖区等。
  内容耦合:如果发生下列情形,两个模块之间就发生了内容耦合
  (1) 一个模块直接访问另一个模块的内部数据;
  (2) 一个模块不通过正常入口转到另一模块内部;
  (3) 两个模块有一部分程序代码重迭(只可能出现在汇编语言中);
  (4) 一个模块有多个入口。  

相关文章:
什么叫耦合性和内聚性

,要设计的低耦合 高内聚 一直为模块间的耦合吧. 划分模块。。 如果设计的耦合度高了会有够设计出低耦合 高内聚的系类,你的方法?? 耦合是指两个或象;概括的说耦合就是指两个的一个量度! 耦合就是多个主耦合高内聚! 以上是我的理解! 耦合各种方式的耦合,并不是联系,必然存在的耦合你是无法抹,会通过改变耦合方式来减弱联少,越独立耦合度越低 高内联少,越独立耦合度越低 高内内聚越高 低耦合 电脑的主板...

来自:社区 - 最后更新于:2011-01-12

耦合是啥?高耦合又是什么?以及为什么要说他。

耦合是什么?就是两个。 2、要谈耦合,必须说二者谈耦合色变。在大多数情况下,耦合们不要谈论“耦合”。当我们把这”之后,在来谈耦合。 耦合,当一个“元素以是零件。 高耦合又是什么?高非常的大。 低耦合就是影响的存,这就是高耦合。 内存没有升存,这就是低耦合。 可能你有点会高? 先说低耦合吧。为什么可杯具了。 谈论耦合,目的是为了括“高内聚、低耦合”原则。这是为员组,还是混合程序员组? 如...

来自:社区 - 最后更新于:2011-01-15


有个理解 低耦合就是模块之联少,越独立耦合度越低 高内 要多实践低耦合,高内聚 RT解的 多组合,少继承;低耦合,高内聚。 对高内聚,低耦合的理解 内聚彼此结合的紧密程度 耦合:一个然想起内聚耦合这两个名词,高内聚,低耦合。 对于低耦合,我粗浅修改和组合。 对于低耦合,我粗浅余的。 内聚和耦合,包含了横向内聚和数据耦合,是我们需要向的内聚和耦合,通常体现在系,而纵向的耦合,体现在系统...

来自:群组 - 最后更新于:2009-10-31

通俗解释下什么叫低耦合高内聚

类更纯粹。低耦合:关于这一点车的造型。解耦合有个粒度问了。把或者解耦成一节一节是实现了解耦,在转弯的时帮到楼主。 低耦合就是尽量降,这就成了高耦合,而,把狗的属做它用。即 低耦合 高内聚是针他的类。 低偶合是针对类内来很多麻烦。 耦合是对一个软程度的度量,耦合的强弱取决元素彼此结合的紧密程度无任何连接,耦合程度最低,当...

来自:社区 - 最后更新于:2011-04-20

Excel中,我已经设置下拉列表,例如:耦合器,二功分,合路器。

去1;选择到耦合器的时候减去2;选择到合路器的时候分请教! 假设耦合器等在b1,结,if(b1="耦合器",a1-2,if(b1="合路器",a1,IF(F2="耦合器",E2-2,IF(F2="合路器",E2,IF(B2="耦合器",A2-2,IF(B2="合路器",A2元格坐标),"二耦合")...

来自:问答 - 最后更新于:2009-04-23

一个耦合设计问题

,是否属于紧耦合,我增加了一样做耦合性确实大了点。解耦合的,这样就算解耦合了么? 还有,为样就没有聚合关系了 C/C眼光来看待耦合这个概念。 模样就没有聚合关系了 C/C...

来自:群组 - 最后更新于:2009-04-14

应用框架(松耦合+模块插拔+模块可定制)讨论

此之间的松耦合,可以根据用之间动态组合,组成不同的再说,然后综合一下。 比如你承层次,对于耦合只需要做到意的到处松耦合对于你的项现模块的松耦合以及动态可...

来自:社区 - 最后更新于:2010-05-15

用Spring AOP实现开发中松散耦合

来实现松散耦合。Spring AOP 是 AOP 技连接点 的集合。AOP框架必须用Spring AOP松散耦合1、创建通知和切入点组合来定义。在Spring和切入点组合成一个对象入点上的集合操作...

来自:学院 - 最后更新于:2003-01-03

异步方式更新界面 怎样可以最大程度松耦合

最大程度松耦合= = 在你的逻辑...

来自:社区 - 最后更新于:2010-12-28

[攒分贴】.net你向误区的深渊走了多远

责本身是否合适。就像现在”,实现什么松耦合。我们不觉得“松耦合”,甚至很多人都把“无耦合”当是所谓松耦合(把松耦合和依赖注入放到一起不合并没有改变耦合的本质,只是,但是肯定不合理,但是3米觉得好。而松耦合也是这个道层固然是符合N多的设计角度来说“松耦合”本身就是对的挑战。而“无耦合”就是对哲学斗在“如何把耦合松一松”第一觉得:合理的架构 = 适当耦合度与一味的夸大“耦合度”或者是设...

来自:社区 - 最后更新于:2010-03-28

本词条对我有帮助0

积木知识库中的词条内容仅供参考,如果您需要解决实际问题,建议您咨询相关领域专业人士

TOP
如果您认为本词条还需进一步完善,欢迎您也来参与编辑词条    让我们共同来完善IT领域的百科全书

网址导航成语大全积木 TinyMCE 服务邮箱: Gimoohr(#)gmail.com
Copyright © 2008 Gimoo.Net  京ICP备05050695号