Observer模式
- 拉模式.
- Observer实现了一种间接关系.可以向各种对象注册观察者.可以有效地管理依赖关系.
- 拉模式实现简单,且Subject和Observer可以成为类库中的可重用元素.
- 当被观察对象比较复杂,并且Observer需要一个提示,那么使用推模式.
- 该模式的目的:增加新的Observer对象时,无需更改被观察的对象.被观察对象保持了封闭.OCP.
- 模式的形成.
- 朝着正在编写的代码的需要方向去演化代码.
- 在重构代码以解决耦合性,简单性,以及表达性的问题时.代码可能已经接近于一个特定的模式了.
- 重命名类和变量的名称,并修改结构以符合更正规的模式形式,这样,代码回归为模式.
- 优先考虑测试,有助于将设计中的耦合减至最少.因为测试需要隔离模块(来单独测试被测模块).
[Agile Software Development(Principles,Patterns,and Pracitices)]