事件驱动模型概述

来源:互联网 发布:pdf阅读器下载 知乎 编辑:程序博客网 时间:2024/06/06 07:37

实际上,事件驱动并不是计算机编程领域的专业词汇,他是一种比较古老的响应事件的模型,在计算机编程,公共关系,经济活动等领域有着广泛的运用。顾名思义,事件驱动就是在持续事务管理过程中,由当前时间点上出现的事件引发的调动可用资源执行相关任务,解决不断出现的问题,防止事务堆积的一种策略。在计算机编程领域,事件驱动模型对应一种程序设计方式,Event-Driven programming,即事件驱动程序设计。

事件驱动模型一般是由事件收集器,事件发送器和事件处理器三部分基本单元组成。

其中,事件收集器专门负责收集所有的事件,包括来自用户的(鼠标单击事件,键盘输入事件),来自硬件的(时钟事件),来自软件的(如操作系统,应用程序本身)。事件发送器负责将收集器收集到的事件分发到目标对象中。目标对象就是事件处理器所处的位置。事件处理器主要负责具体事件的相应工作,它往往要到实现阶段才完全确定。

在程序设计过程中,对事件驱动机制的实现方式有多种,这里介绍batch programming,即批次程序设计。批次的程序设计是一种比较初级的程序设计方式。使用批次程序设计的软件,其流程是由程序设计师在设计编码的过程中决定的,也就是说,在程序运行过程中,事件的发生、事件的发送和事件的处理都是程序预先设定好的。

由此可见,事件驱动程序设计更多的关注了事件产生的随机性,使得应用程序能够具备相当的柔性,可以应付种种来自用户、硬件和系统的离散随机事件,这在很大程度上增强了用户和软件的交互性和用户操作的灵活性。

事件驱动驱动程序可以由任何编程语言来实现,只是难易程度有别。如果一个系统是以事件驱动程序模型作为编程基础的,那么,它的架构基本上是这样的:预先设计一个事件循环所形成的程序,这个事件循环构成了“事件收集器”,它不断的检查目前要处理的事件信息,然后使用“事件发送器”传递给“”事件处理器“”。

原创粉丝点击