Why Solve the Same Problem Twice?

The exercise of solving the same app twice, once using AWT and again using WFC, serves three purposes. First, there can be times when you will need to write a windowed app that is portable across multiple platforms. Java is one of the few modern languages that provides that capability.

Second is the possibility that you might be asked to use your PC as a cross-platform development tool to create an app designed to execute on a different platform than your PC is using. This chapter gives you much of the knowledge you would need to satisfy such a demand. Along the way, we'll examine some of the strengths and weaknesses of AWT.

Third, seeing how an AWT app is constructed will give you a vantage point from which you can view the Windows-specific Rapid app Development (RAD) tool approach demonstrated in . From looking at the two different approaches, you'll gain an appreciation of the differences and similarities between the AWT and WFC approaches.

This chapter doesn't discuss the Java Foundation Classes (JFC) introduced with Java 1.1 from Oracle; however, JFC classes and AWT share most properties. JFC simply adds graphical features to those supported by AWT.