news, links // 2010.03.15 08:23:23 [hh]
Einen interessanten Ansatz für integrierte Entwicklungsumgebungen (IDEs) präsentiert Andrew Bragadon von der Brown University, Rhode Island. So genannte Bubbles (deutsch: Blasen) erlauben in der Java-IDE "Code Bubbles" die Darstellung, Bearbeitung und Weitergabe von Fragmenten wie Bug Reports, Suchergebnissen, Code Stacks, Methoden, Debug-Calls und Datenstukturen. Optisch ansprechend dargestellt wird immer nur der gewünschte Kontext, der User kann alles selbst anpassen. Ein Beispiel, das auch für andere Programmiersprachen Schule machen könnte und eine Alternative zu den starren Schemata heutiger IDEs bieten könnte.
Die englischsprachige Abstract Summary der Arbeit: "Rethinking the User Interface Paradigm of Integrated Development Environments": "Developers spend significant time reading and navigating code fragments spread across multiple locations. The file-based nature of contemporary IDEs makes it prohibitively difficult to create and maintain a simultaneous view of such fragments. We propose a novel user interface metaphor for code understanding and maintanence based on collections of lightweight, editable fragments called bubbles, which form concurrently visible working sets.
The essential goal of this project is to make it easier for developers to see many fragments of code (or other information) at once without having to navigate back and forth. Each of these fragments is shown in a bubble.
A bubble is a fully editable and interactive view of a fragment such as a method or collection of member variables. Bubbles, in contrast to windows, have minimal border decoration, avoid clipping their contents by using automatic code reflow and elision, and do not overlap but instead push each other out of the way. Bubbles exist in a large, pannable 2-D virtual space where a cluster of bubbles comprises a concurrently visible working set. Bubbles support a lightweight grouping mechanism, and further support connections between them.
A quantiative user study indicates that Code Bubbles increased performance significantly for two controlled code understanding tasks. A qualitative user study with 23 professional developers indicates substantial interest and enthusiasm for the approach, despite the radical departure from what developers are used to.
There are a number of key differrences between bubbles and windows. We developed the design of bubbles to help reduce the effort needed to work with large numbers of fragments, and to support scalability. We provide a brief overview here (a much more complete description is provided in the papers):