sc结构模块图中模块之间的关系(耦合、内聚)

sc结构模块图中模块之间的关系(耦合、内聚) 耦合和内聚就是描述sc结构模块图中模块之间的关系完全正确内聚描述单个模块内部元素联系紧密程度耦合描述多个模块之间相互依赖关联程度二者都是用来评判SC模块结构图设计好坏的核心指标一、内聚管自己定义一个模块内部所有功能、代码聚合在一起的紧密程度目标越高越好从差→优排序必背偶然内聚毫无关联随便凑一起逻辑内聚功能逻辑相似实际业务无关时间内聚同一时间段执行的代码放一起过程内聚按执行流程顺序组合通信内聚操作同一批数据顺序内聚前一个输出是后一个输入串行执行功能内聚最优模块只做单一完整一件事二、耦合管别人定义不同模块之间互相牵连、依赖的程度目标越低越好从差→优排序必背内容耦合直接修改另一模块内部数据/代码最差公共耦合共用全局变量、公共数据区外部耦合共用外部环境、外部格式控制耦合传递控制标志、状态开关空心控制流标记耦合传递复合数据结构结构体、对象数据耦合最优只传简单业务数据实心数据流无直接耦合互不调用、互不依赖最理想三、结合SC图直白理解看单个方框模块→ 评内聚内部功能纯不纯看模块之间调用连线传递内容→ 评耦合只传普通业务数据 → 数据耦合好传真假、启停、判断标识 → 控制耦合差共用同一个数据表全局字段 → 公共耦合内聚看单个方框模块偶逻试过通顺功内聚等级一句话判断好坏偶然内聚模块里代码完全不相关硬凑一起最差逻辑内聚多个功能逻辑相似靠参数选一个执行差时间内聚只是同一时间段执行的代码凑一起差过程内聚按执行顺序放一起各步骤无强依赖一般通信内聚所有操作都针对同一批数据一般偏上顺序内聚前一步输出后一步输入串行执行好功能内聚模块只做一件完整、单一的事最好耦合看模块之间的连线传参无数标空外公内耦合等级一句话判断好坏内容耦合一个模块直接改另一个模块的内部代码/数据最差公共耦合多个模块共用同一个全局变量/数据表差外部耦合多个模块依赖同一个外部文件/协议格式差控制耦合传真假、启停、判断标识控制对方逻辑差标记耦合传整个对象/结构体但对方只用其中部分一般数据耦合只传普通业务数据如ID、金额最好无直接耦合模块之间完全不调用、不传递任何信息理想速记口诀内聚越单一越好功能内聚最牛。耦合越独立越好数据耦合最优。四、设计黄金原则高内聚低耦合模块内部高度统一专一模块之间尽量少牵连、少依赖五、考场极简口诀内聚看内部纯不纯越高越稳耦合看之间粘不粘越低越简SC模块设计就靠这俩打分。