一、核心思想
数据在系统中按顺序流动,前一步处理结果作为后一步输入(数据驱动)
二、工作机制
数据 → 处理1 → 处理2 → … → 处理N → 输出
特点
- 每个处理单元独立
- 数据逐步转换
- 支持流水线处理
三、子风格
1. 批处理
- 处理整体数据
- 无用户交互
2. 管道-过滤器
- 数据流式传输
- 每个过滤器处理数据
- 弱用户交互
四、优缺点
优点
- 松耦合【高内聚-低耦合】
- 良好的重用性/可维护性
- 可扩展性【标准接口适配】
- 良好的隐蔽性
- 支持并行
缺点
- 交互性较差
- 复杂性较高
- 性能较差(每个过滤器都需要解析和合成数据)
应用
- 传统编译器
- 网络报文处理