Spec: A Framework for the Specification and Reuse of UIs and their Models - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Communication Dans Un Congrès Année : 2012

Spec: A Framework for the Specification and Reuse of UIs and their Models

Résumé

Implementing UIs is often a tedious task. To address this, UI Builders have been proposed to support the description of widgets, their location, and their logic. A missing aspect of UI Builders is however the ability to reuse and compose widget logic. In our experience, this leads to a significant amount of duplication in UI code. To address this issue, we built Spec: a UIBuilder for Pharo with a focus on reuse. With Spec, widget properties are defined declaratively and attached to specific classes known as composable classes. A composable class defines its own widget description as well as the model-widget bridge and widget interaction logic. This paper presents Spec, showing how it enables seamless reuse of widgets and how these can be customized. After presenting Spec and its implementation, we discuss how its use in Pharo 2.0 has cut in half the amount of lines of code of six of its tools, mostly through reuse. This shows that Spec meets its goals of allowing reuse and composition of widget logic.
La mise en œuvre des interfaces utilisateur est souvent une tâche fastidieuse. Pour y remédier, des UI Builder ont été proposées pour soutenir la description des widgets, leur emplacement et leur logique. Un aspect manquant des UI Builder est toutefois la possibilité de réutiliser la logique et composer les widgets. D'après notre expérience, cela conduit à une quantité importante de duplication dans le code d'interfaces utilisateur. Pour résoudre ce problème, nous avons construit Spec: un UI Builder pour Pharo en mettant l'accent sur ​​la réutilisation. Avec Spec, les propriétés du widget sont définies de manière déclarative et attachées à des classes spécifiques connues sous le nom des classes composables. Une classe composable définit sa description de widget ainsi que le lien entre le modèle et le widget ainsi que la logique d'interaction avec le widget. Cet article présente Spec, en montrant comment elle permet une réutilisation transparente des widgets et comment ceux-ci peuvent être personnalisés. Après avoir présenté Spec et sa mise en œuvre, nous discutons de la façon dont son utilisation dans Pharo 2.0 a réduit de moitié la quantité de lignes de code de six de ses outils, principalement grâce à la réutilisation. Cela montre que Spec atteint ses objectifs de permettre la réutilisation et la composition de la logique des widgets.

Mots clés

Fichier principal
Vignette du fichier
Spec-IWST12-Final.pdf (941.24 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-00759030 , version 1 (29-11-2012)

Identifiants

  • HAL Id : hal-00759030 , version 1

Citer

Benjamin van Ryseghem, Stéphane Ducasse, Johan Fabry. Spec: A Framework for the Specification and Reuse of UIs and their Models. Proceedings of ESUG International Workshop on Smalltalk Technologies (IWST 2012), Aug 2012, Gent, Belgium. ⟨hal-00759030⟩
247 Consultations
570 Téléchargements

Partager

Gmail Facebook X LinkedIn More