游戏编程模式笔记——第四章 观察者模式

“在对象间定义一种一对多的依赖关系,以便当某对象的状态发生改变时,与它存在依赖关系的所有对象都能收到通知并自动进行更新。”
在计算机上随便打开一个应用,它很有可能就是采用Model-View-Controller架构开发,而其底层就是观察者模式。观察者模式应用非常广泛,Java甚至直接把它集成到了系统库里面(java.util.Observer)。C#更是直接将它集成在了语言层面(event关键字)。
有一个原则,如果两个观察者观察同一个被观察者对象,则它们两个不会因为注册顺序而受到影响。
观察者模式非常适合于一些不相关的模块之间的通信问题。它不适合于单个紧凑的模块内部的通信。