MD 更新:未知

核心思想

系统由多个独立构件组成,构件之间不直接调用,而是通过事件进行通信 **本质:事件驱动 + 松耦合


子风格

事件驱动(隐式调用)

进程通信


工作机制(事件驱动)

事件源 → 发布事件 → 事件管理器 → 分发事件 → 事件处理器

过程:

  1. 构件触发事件
  2. 事件发送给事件管理器
  3. 事件管理器通知相关构件
  4. 构件执行处理
  5. 返回执行结果

特点

  • 构件之间不直接交互
  • 通过中间机制(事件管理器)通信
  • 系统由多个子系统构成
  • 每个子系统有自己的事件处理机制

对比:调用返回风格

项目独立构件风格调用返回风格
交互方式事件驱动函数调用
构件关系不直接交互直接调用
耦合性松耦合紧耦合
控制方式分散集中

优点

  • 松耦合
  • 可扩展性强
  • 可复用性好

缺点

  • 控制流程难以预测
  • 调试困难
  • 数据一致性问题
  • 依赖上下文(难推理)

判断方法

  • 构件之间没有直接调用 → 是
  • 有“事件/消息中心” → 是
  • 系统是异步/解耦 → 是

判断方法

  • 构件之间没有直接调用 -> 是
  • 有【事件/消息中心】 -> 是
  • 系统是异步/解耦 -> 是

FAQ

什么是独立构件风格?

一种通过事件机制进行通信的架构风格。

和调用返回风格有什么区别?

独立构件通过事件通信,调用返回通过函数调用。

为什么是松耦合?

因为构件之间不直接依赖彼此。