编程思想 - 低耦合

低耦合

定义:软件结构中不同的模块间互联程度度量,取决于模块间接口复杂程度,通过接口数据,追求尽可能松散的耦合系统。

设计要求

模块独立,尽可能松散的耦合。

具体种类

  1. 非直接耦合:两个模块之间分别能独立地工作,不需要另一模块的独立存在。
  2. 数据耦合:两模块通过参数交换数据信息。
  3. 控制耦合: 两个模块通过参数交换控制消息。
  4. 公共环境耦合:两个或多个模块通过一公共数据环境作用。
    1. 一模块发送数据,另一模块取数据,等价数据耦合。
    2. 两模块既在公共环境送数据,又从里面取数据,介于数据耦合和控制耦合之间。
  5. 内容耦合:
    1. 一模块访问另一模块内部数据
    2. 一模块不通过正常入口转到另一模块内部
    3. 两模块有部分程序代码重叠
    4. 一模块有多个入口

编程建议

尽量使用数据耦合,少用控制耦合,限制公共环境耦合,完全不用内容耦合。