Recommended: Sing it, brah! 5 fabulous songs for developers
JW's Top 5
Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs
The AWT has taken a lot of heat for its shortcomings, which included lack of decent widgets, a weird 1.0 event model, inconsistent behavior across platforms, and large functionality deficiencies.
These problems have been addressed in Java's 1.2 release through the inclusion of the Java Foundation Classes (JFC). The JFC contains much additional feature support, including a new set of GUI widgets and support classes called Swing.
Note: To develop with Swing and Java 1.2 and deploy your apps on the Internet/intranet, you'll need to download and install JDK 1.2 and Java Plug-in. See the sidebar "Tips for installing JDK 1.2 Beta 4 and the Java Plug-in" for details.
The JFC provides the new core Java reference platform for Java GUI and client-side development. JFC contains the following components:
The Swing portion of JFC is really all we're interested in for rebuilding the Forum.
Swing is the crown jewel of the JFC. It is, in essence, the "new AWT," and as such it supercedes the old AWT (although support for the old AWT is supported in Java 1.2 for backwards compatibility).
This portion of the Swing hierarchy is analogous to the AWT hierarchy
The architecture of Swing components is loosely based on the Model-View-Controller (MVC) design pattern. MVC separates an entity that needs to present data into three parts -- the model, the view, and the controller. This responsibility split allows a component's rendering to be decoupled from its data and event handling.
Swing classes and interfaces come in two varieties: user interface (UI) classes, such as widgets, and non-UI classes, such as event classes and utility classes for widgets.
The com.sun.java.swing package and the Swing components
The com.sun.java.swing package is the main Swing package. It contains all the Swing widgets and components and most of their supporting classes.
These are the additional new components that Swing has to offer
Swing's components form a new class hierarchy parallel to the original AWT. The root of this hierarchy is JComponent. Swing's UI classes are based on the lightweight component facility introduced in Java 1.1. Lightweight components are pure
Java, and therefore have no native peers.
All Swing components have the following characteristics, among others:
The purpose of most of the Swing components can be inferred by their names. Some of the more interesting widget types include: