在
GoF P194 5.7Section”
动机
”
中有应用的描述,如果对应用的
Obersers
进行再一次抽象,其可以继承一个公用的接口
Listener
。这是这一步抽象,对这个模式将有更好的理解。
而最初在接触观察者模式前,我花费了大概4天左右的时间,一直在考虑Java提供的事件机制,尤其是GUI方面的使用,因为对GUI可以说是我的一个盲点,因此尝试从思想上有所截获。最终我归纳如下:
1.
监听者注册即调用时间源的注册方法,并以监听者接口为参数;
2.
事件源通知即调用监听者方法传递消息;
3.
通知的消息可以是一个事件对象;
4.
通知的方式就是监听者接口的方法,且以事件对象为参数。
现在读GoF的Observer描述,很是有醍醐灌顶之感。
不过如果没有那段时间的摸索,估计难有如此的体验。