Programmation évènementielle
langage, programmation, ergonomie, IUG, cas d’utilisation
Ce module initie à la conception et à la programmation évènementielle, avec application dans les interfaces graphiques. En abordant l'ergonomie comme une science, les facteurs cognitifs associés à l'utilisation d'une interface, les différents modèles de conception, les aspects techniques propres aux GUI (Graphic User Interface), l'étudiant est en mesure de mener à bout un petit projet fondé sur une l'utilisation d'une interface graphique.
En pratique, le serveur graphique X11 (X11R6) et la bibliothèque bas niveau Xlib sont étudiés, mais on utilise surtout la bibliothèque Tkinter du langage Python qui permet la création rapide d'interfaces graphiques. Les sources produits sont portables puisqu'il suffit d'avoir l'interprète Python pour pouvoir exécuter l'application correspondante (disponibles sous Linux, Windows, MacOS, Solaris, etc.).
Il existe bien entendu d'autres GUI qui se présentent sous la forme de bibliothèques tel que Gnome (GLib Reference Manual, GDK Reference Manual, GTK+ Reference Manual) ou Qt (Qt Documentation) et qui ont leurs propres qualités mais qui sont relativement difficiles à assimiler dans le temps qui nous est imparti dans ce module.
Transparents du cours
- introduction
- physiologie et matériel
- la bibliothèque Tkinter
- IUG, principes et normes
- le serveur X11
- la bibliothèque Xlib
Documentation disponible sur le sujet
Manuels en ligne :
Tutoriels, exemples :
- Graphical User Interfaces with Tk (Python 3.14 standard lib.)
- Python : utilisation de fenêtres et de graphismes (developpez.com)
- An Introduction to Tkinter (2005)
X11
- Documentation for the X Window System Version 11 Release 6.8 (X11R6.8)
Sujets de T.P.
- Tkinter TP 1 : gestion des couleurs avec tkinter et premiers widgets
- Tkinter TP 2 : pratique du Canvas
- Tkinter TP 3 : application graphique autonome
- X11 TP 1 : familiarisation avec l'environnement X11 et le "desktop" Xfce
Projet 2026-2027 : Modélisation isométrique
Projets des années antérieures
- Jeux
- Utilitaires
- Arts graphiques
- Logique, Mathématiques