Java Sun >
Guidelines Home Page >  Java Look and Feel Design Guidelines >
  Previous Next Contents/Index/Search

Foreword by James Gosling

User interfaces are hard. Both the original user interface toolkit, AWT, and its successor, the industrial-strength, all singing, all dancing Swing toolkit, sidestep the hard problem of defining a user interface by allowing it to be plugged in to the platform on which it's running. A Java application running on the Mac can have the Mac look and feel, the same one running on Microsoft Windows can use its look and feel, and that same program running on UNIX can use a UNIX look and feel.

Although this pluggable interface strategy has lots of appeal, the down side is that the same application running on different platforms has a different appearance and behavior on each one. Documentation is difficult to write. Users get confused trying the same application on different platforms. This situation created a demand for a common look and feel that is lucid, easy to use, and runs harmoniously on many platforms.

Coming up with the design for such a look and feel was quite a challenge. The real danger involved falling into a Tragedy of the Commons--giving in to everyone's wishes and ending up with a mess. The hardest task was striking a balance between all the conflicting concerns.

I had the great privilege of working a staircase away from the team that designed the Java look and feel and the associated design guidelines--hallways covered with design ideas; field trips to survey developers; prototyping; trading off; balancing; testing; testing; testing. Out of this effort came a design that is clean and elegant.

James A. Gosling
Vice President, Sun Labs Research

Java Look and Feel Design Guidelines, second edition.
Copyright 2001. Sun Microsystems, Inc. All Rights Reserved.
Previous Next Contents/Index/Search
Left Curve
Java SDKs and Tools
Right Curve
Left Curve
Java Resources
Right Curve
Java 8 banner (182)