2021-软件系统设计-Lec22-Patterns of Patterns
Patterns of Patterns
1. Working together
- 组合模式 Compound Pattern
- 是在你的设计中一起出现的
- 应用被处理很多问题的
2. Duck reunion
- 实现Quackable接口
- a Goose class:需要被simulation使用,使用适配器模式
- 使用adapter
- 统计鸭叫的次数(要求不能修改原有的代码):装饰器模式(不改变原本代码,而增加功能,装饰者接口与被装饰者接口一致)
- 装饰者两个缺点:设计上的缺点(注意)
- 想要封装的更好:工厂模式,抽象工厂(所有的行为要么都被观测,要么不被观察)
- 抽象工厂
- 抽象产品
- Counting Duck Factory
- 产品都是装饰者鸭
- 三个模式的联用
- 不同的鸭群要分开管理,想要在一群鸭子上执行操作:组合模式,只是监听(中介者模式),实现对组合的整体操作,结合迭代器模式
- 实时跟踪每一个鸭子的叫的行为:观察者模式
练习题
- 变化点:adapter(不一致的接口)
- class diagram
2021-软件系统设计-Lec22-Patterns of Patterns
https://spricoder.github.io/2021/07/15/2021-Software-System-Design/2021-Software-System-Design-Lec22-Patterns%20of%20Patterns/