事件: Event 能够发生的什么事情
角色: 使对象或类具备通知能力的成员
对象O拥有一个事件E想表达的思想是:当事件E发生的时候,O有能力通知别的对象。
事件参数 EventArgs
事件处理器 Event Handler
事件的功能 - 通知 + 可选的事件参数(即详细信息)
内容决定形式 功能决定使用方法
使用:用于对象或类见的动作协调与信息传递(消息推送)
原理:事件模型(event model)中的两个“5”
“发生---->响应”中的5个部分----闹钟响了你起床,孩子饿了你做饭-----这里隐含了“订阅”关系
“发生---->响应”中的5个动作----我有事件---有人关心我的事件----事件发生了-----关心事件的人被通知到------全都处理事件
事件的订阅者
事件消息的接收者
事件的响应者
事件的处理者
被事件所通知的对象
以上全都是订阅者
事件信息
事件消息
事件数据
事件参数
以上全都是事件参数
应用:事件多用于桌面、手机的客户端编程,这些程序是通过事件来“驱动”的。
MVC 、MVP、MVVM等模式,是事件模式更高级,更有效的“玩法”