📖
Seamless Composition and Reuse of Customizable User Interfaces with Spec
Benjamin van Ryseghem, Stéphane Ducasse, Johan Fabry

Seamless Composition and Reuse of Customizable User Interfaces with Spec

Science & Mathematics Published 2014 Verification Pending

Overview & Synopsis

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.

Indexed from repository: HAL Open Science (hal.science)
Loading document from verified source...
Keyboard Shortcuts: ← / → for pages • + / - for zoom • 0 to fit width Powered by Mozilla PDF.js v3.11

Document Information

Document Title Seamless Composition and Reuse of Customizable User Interfaces with Spec
Author / Organization Benjamin van Ryseghem, Stéphane Ducasse, Johan Fabry
Subject & Discipline Multidisciplinary Academic Open Research
Categories Science & Mathematics
Publication Year 2014
License / Rights Open Access / Creative Commons
Resource Verification Listed PDF (Verification Pending)
Original Host Website HAL Open Science (hal.science)
File Format application/pdf (Portable Document Format)
Language EN
Catalog ID DOC-235192
Original Source Link Visit Source Page on hal.science »