全文地址:http://www.ihuxu.com/static/archives/20130826180343.html
功能描述:观察者设计模式能够更便利地创建查看目标对象状态的对象,并且提供与核心对象非耦合的指定功能性。
也就是说,利用这种模式可以方便地创建一个对象(观察者),其可以用来“监视”另一个对象(被观察者)的状态。这样,就可以在不必完全重构某些核心对象(可以理解成被观察者)的情况下,向现有的应用层序填加额外的功能。
这意味着,当一个对象发出一个action时,需要进行另一个未知的action时,利用观察者设计模式更为合理。
应用:用户注册(下面以此为例),插件系统等。
标准PHP类库(StandardPHPLibrary,SPL),内部已经实现了两个接口。
被观察者接口:
观察者接口: