Programmation événementielle

En informatique, la programmation événementielle est un paradigme de programmation. Il est fondé sur la réception d'événements. Ces événements peuvent être de tous types, et en particulier, toutes les actions que l'opérateur peut réaliser au travers de son interface graphique (par exemple, un déplacement ou un clic de souris, une saisie au clavier).

Historique

modifier

La programmation événementielle est apparue avec l’utilisation des interfaces graphiques (GUI, en anglais : graphical user interface), et spécifiquement avec l'utilisation des langages objets[1]. Cependant, c’est plus particulièrement l’utilisation de la programmation orienté objet qui rend courant l'utilisation de ce paradigme[1].

Description

modifier

La programmation événementielle est un paradigme de programmation fondé sur les événements. Elle s'oppose à la programmation séquentielle ou encore la programmation par processus léger (threads, en anglais)[2]. Le programme sera principalement défini par ses réactions aux différents événements qui peuvent se produire, c'est-à-dire des changements d'état de variable, par exemple l'incrémentation d'une liste, un déplacement ou un clic de souris, une saisie au clavier[3]...

La programmation événementielle peut également être définie comme une technique d'architecture logicielle où l'application est une boucle principale divisée en deux sections : la première section détecte les événements et la seconde les gère[3]. Elle est particulièrement mise en œuvre dans le domaine des interfaces graphiques[4].

Il n'est pas question d'interruptions logicielles, le traitement d'un événement ne peut pas être interrompu par un autre, à part en des points précis explicitement prédéterminés du code logiciel (points qui, en fait, créent une seconde boucle événementielle au sein de la première)[réf. souhaitée].

La programmation événementielle peut être réalisée dans n'importe quel langage de programmation, bien que la tâche soit plus aisée dans les langages de haut niveau. Certains environnements de développement intégrés (par exemple Qt Software) permettent de générer automatiquement le code des tâches récurrentes dans la gestion des événements[5].

Quelques exemples

modifier

Notes et références

modifier
  1. 1 2 Abderaouf Bennekrela, « La programmation événementielle » Accès libre, sur medium.com, (consulté le )
  2. Fabien Gaud, « Étude et amélioration de la performance des serveurs de données pour les architectures multi-cœurs » Accès libre [PDF], sur theses.hal.science, (consulté le )
  3. 1 2 Florent Grélard, Université de Bordeaux, « Programmation événementielle en Javascript : Initiation au développement Web (Master Bioinformatique) » Accès libre [PDF], sur labri.fr, (consulté le )
  4. « Chapitre 1 : Introduction à la programmation événementielle » Accès libre [PDF], sur technologuepro.com (consulté le )
  5. 1 2 Michel Grimaldi, « Développement d'applications avec Qt par l'exemple » Accès libre, sur grimaldi.univ-tln.fr (consulté le )
  6. 1 2 « Chapitre 1 : Introduction à la programmation événementielle » Accès libre, sur technologuepro.com (consulté le )

Liens externes

modifier

Voir aussi

modifier