Améliorer les langages et bibliothèques logicielles pour programmer l'interaction - TEL - Thèses en ligne
Thèse Année : 2019

Improving languages and software libraries for programming interaction

Améliorer les langages et bibliothèques logicielles pour programmer l'interaction

Résumé

The aim of this thesis is to study and develop programming models for interactive systems, to promote the prototyping and development of new interaction techniques. In this context, developers mainly use generic interaction frameworks, which they “hack” to integrate new ideas. However, these frameworks are poorly adapted to such uses, and restrict the freedom of developers to deviate from established standards. A first study based on interviews identifies the problems, needs, utilities, and “hacking” techniques encountered in this context. A second study based on an online questionnaire assesses the prevalence of the problems and techniques identified in the first study, as well as the reasons why research frameworks are rarely used to develop new interaction techniques. The results of these studies lead to the definition of three Interaction Essentials, practical recommendations to improve the support of interaction in frameworks and programming languages: (i) an explicit and flexible orchestration of interactive behaviours, (ii) a minimal and initialized interaction environment at the start of any application, and (iii) standardized mechanisms and conventions supported by a flexible language. These recommendations are illustrated initially by an extension to the Smalltalk language, which allows animations to be expressed by adding a duration to function calls. The application of the Interaction Essentials is illustrated once more with the creation of the Polyphony framework, which is based on the Entity-Component-System model originating from Video Games, and adapted for the creation of graphical user interfaces and interaction techniques.
L'objectif de cette thèse est d'étudier et développer des modèles de programmation de systèmes interactifs, pour favoriser le prototypage et le développement de nouvelles techniques d'interaction. Dans ce contexte, les développeurs utilisent principalement des frameworks génériques d'interfaces graphiques, qu'ils “bricolent” pour intégrer de nouvelles idées. Or ces frameworks sont peu adaptés à de tels usages, et restreignent la liberté des développeurs à dévier des standards établis. Une première étude basée sur des interviews relève les problèmes, besoins, utilitaires, et techniques de “bricolage” rencontrés dans ce contexte. Une seconde étude basée sur un questionnaire en ligne évalue la prévalence des problèmes et techniques relevées dans la première étude, ainsi que les raisons pour lesquelles les frameworks issus de la recherche sont peu utilisés pour concevoir de nouvelles techniques d'interaction. Les résultats de ces études aboutissent à la définition de trois Essentiels d'Interaction, des recommandations pratiques destinées à améliorer le support de l'interaction dans les frameworks et langages de programmation : (i) une orchestration explicite et flexible des comportements interactifs, (ii) un environnement d'interaction minimal et initialisé au démarrage de toute application, et (iii) des mécanismes et conventions standardisés et appuyés par un langage flexible. Ces recommandations sont illustrées une première fois par une extension au langage Smalltalk, qui permet d'exprimer des animations en ajoutant une durée aux appels de fonctions. L'application des Essentiels d'Interaction est illustrée une seconde fois par la création du framework Polyphony, qui se base sur le modèle Entité-Composant-Système issu du Jeu Vidéo, et l'adapte pour la création d'interfaces graphiques et de techniques d'interaction.
Fichier principal
Vignette du fichier
manuscrit.pdf (4.59 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Licence
Copyright (Tous droits réservés)

Dates et versions

tel-04369360 , version 1 (02-01-2024)

Licence

Copyright (Tous droits réservés)

Identifiants

  • HAL Id : tel-04369360 , version 1

Citer

Thibault Raffaillac. Améliorer les langages et bibliothèques logicielles pour programmer l'interaction. Interface homme-machine [cs.HC]. Université de Lille (2018-..), 2019. Français. ⟨NNT : ⟩. ⟨tel-04369360⟩
60 Consultations
261 Téléchargements

Partager

More