事件驱动程序设计

✍ dations ◷ 2025-06-08 10:51:55 #计算机编程,事件 (计算机)

事件驱动程序设计(英语:Event-driven programming)是一种电脑程序设计模型。这种模型的程序运行流程是由用户的动作(如鼠标的按键,键盘的按键动作)或者是由其他程序的消息来决定的。相对于批处理程序设计(batch programming)而言,程序运行的流程是由程序员来决定。批处理(batch)的程序设计在初级程序设计教学课程上是一种方式。然而,事件驱动程序设计这种设计模型是在交互程序(Interactive program)的情况下孕育而生的。

事件驱动程序可以由任何编程语言来实现,然而使用某些语言来撰写会比其他的语言来的简单。有些集成开发环境(简称IDE)也会影响实现事件驱动程序设计的难易程度。有的 IDE 会使的开发工作变的很简单,有的则否。

取代传统上一次等待一个完整的指令然后再做运行的方式,事件驱动程序模型下的系统,基本上的架构是预先设计一个事件循环所形成的程序,这个事件循环程序不断地检查目前要处理的信息,根据要处理的信息运行一个触发函数进行必要的处理。其中这个外部信息可能来自一个目录夹中的文件,可能来自键盘或鼠标的动作,或者是一个时间事件。

对一个事件驱动(event driven)系统进行程序设计,因此可以视为改写系统默认触发函数的行为,来符合自己需要的一种动作。输入的事件可以放进事件循环或者是经由已经注册的中断处理器来与硬件事件交互;而许多的软件系统使用了混和这两种技术的处理。预先设计好的算法确定了一件事,那就是当他们被需要的时候,就会在适当的时机被触发。也因此提供了一个模拟中断驱动环境(interrupt driven environment)的软件抽象架构。事件驱动程序设计基本上包含了许多小程序片段,这些小程序片段被称为事件处理器(英语:event handler)并且被用来回应外部的事件与分发事件。通常尚未被事件处理器处理的事件,都会被系统放在一个称为事件队列的数据结构中,等待被处理。

许多情况下,事件处理器可以自己触发事件,因此也可能形成一个事件串(英语:event cascade)。事件驱动程序设计的着重于弹性以及异步化上面,并且企图尽可能的modeless。 图形用户界面这类程序就是典型的事件驱动设计方式。

计算机操作系统是事件驱动程序的典型示例。在操作系统的最底层,中断处理器的动作就像是硬件事件的直接处理器,搭配着 CPU 运行分配事件规则动作。对软件进程而言,基本上操作系统可视为一个事件分配器,发送数据和软件中断给用户自己写的软件进程。

下面是两个数相加的示例,分别用批量版本与事件驱动版本来撰写


相关

  • 季节性情绪失调季节性抑郁症(英文:Seasonal Affective Disorder,或SAD,以下简称SAD)也叫做“冬季忧郁症”(英语:Winter depression),是一种感情的,或者情绪的失调。大多数的SAD患者在一年的大部分时
  • 自然人自然人(natural person),法律用语,是与法人相对的法律概念。每个生物学意义上的人都是指自然人。只有自然人才有资格享有基本人权。某些权利,诸如选举权和被选举权,也只有自然人才
  • 认识论知识论是探讨知识的本质、起源和范围的一个哲学分支。目前知识论和认识论之间的关系存在争议,有人认为它们是同一个概念,而也有人认为它们其实是存在一些密切联系的两个不同概
  • 普罗米修斯普罗米修斯(英语:Prometheus ; 古希腊语:Προμηθεύς),在希腊神话中,是泰坦神族的神明之一,名字的意思是“先见之明”。他是地母盖亚与乌拉诺斯的女儿忒弥斯与伊阿珀托斯
  • 氨甲酰天冬氨酸氨甲酰天冬氨酸(英语:Carbamoyl aspartic acid)也称为脲基琥珀酸(英语:ureidosuccinic acid)) 是一种嘧啶生物合成过程中的一种氨基甲酸酯衍生物,由天冬氨酸转氨甲酰酶合成。医学导
  • 士林慈坐标:25°05′22″N 121°31′28″E / 25.08954°N 121.5245°E / 25.08954; 121.5245农历三月廿二(绕境日期)士林慈
  • 梅尔文·伊莱梅尔文·安德森·伊莱(英语:Melvin Anderson Ely,1978年5月2日-,出生于伊利诺伊州哈维,美国职业篮球运动员。2 梅尔文·伊莱 | 4 迈克尔·芬利 | 5 罗伯特·霍里 | 7 瓦斯里斯·斯
  • 黑迈弗朗特山脉坐标:74°35′S 11°0′W / 74.583°S 11.000°W / -74.583; -11.000黑迈弗朗特山脉(德语:Heimefrontfjella)是南极洲的山脉,位于南极大陆东部的毛德皇后地,全长120公里,面积3,900
  • 五代音系五代音系,是指唐末以来、直至五代这数百年间中原汉语的音韵体系,是中古汉语的演进时程之一。这一时期华夏不定、战争频纷,所以五代音系较隋唐音系有非常显著的变化。南唐徐锴所
  • 意富加牟豆美命意富加牟豆美命(日语:オオカムヅミノミコト)乃《古事记》之记述,祂是日本神话里出现的桃子,《日本书纪》里亦有类似的记录,却未出现其名。另有别名意富迦牟都美命、于保加牟豆美命