A User Interface Toolkit Based on Graphical Objects and Constraints

This is a paper from Pedro A. Szekely and Brad A. Myers that describes a user interface toolkit called Coral (Constraint-based Object-oriented Relations And Language). Coral uses constraints to manage the relationships between the graphical objects on the screen and the application data structures that they represent. The input from the mouse and keyboard is also not handled by the graphical objects themselves, but by special input handling objects called interactors. This paper can be obtained through the ACM site, in the following link:

http://portal.acm.org/citation.cfm?id=62083.62088

Even though the paper is centered in Coral, it gives some insights for the construction of interfaces in which it’s whether recommend or required the use of constraints to obtain a good software product.

  • The use of a hierarchy of graphical objects facilitates the creation of new classes of objects, because the new graphical objects can inherit the complex mechanisms already implemented or override it to their specific needs.
  • Another aspect is defining constraints that can be applied to list of graphical objects and making them reusable so that different sets of constraints can be applied to different instances of the same class.
  • Last but not least, the fact that Coral uses mechanisms call Active Values (data values plus a list of objects and procedures that depend on that value) to provide a clean separation between the user interface and rest of the application. This is a very important aspect in the developing of applications, because allows the application and the interface to evolve without having the burdens that would come with the tact that they were tied to each other.
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: