第23章 消息总线

23.1. 从更高角度看消息与事件
23.2. 事件的特性分析
23.3. 什么是消息总线(Message Bus)
23.4. 使用消息总线
23.5. 消息的详细控制
23.6. 用事件控制导航
23.7. 其它特性
23.8. 例子

23.1. 从更高角度看消息与事件

“Event/Listener”是我们常用的一种设计模式,其中最常见的莫过于控件事件了。写过Swing程序的同学应该都非常了解,譬如,我们可以调用JButton的addActionListener方法,这样的话,当JButton被点击时,会自动回调你的listener方法。

但正是由于控件事件被用得非常广泛,以至于很多同学把事件当成是控件的一种专有属性,而忽略了“事件”其实是一种典型的Observer模式,它原本可以用来解决更多的架构设计问题。本文,我们来介绍OperaMasks中的“消息总线”。