Java Basics
Why aren't Java GUIs easier?
I don't want to exaggerate the difficulties of working with Java GUIs because they are much easier to build than Microsoft Windows interfaces in C++. But they are harder than those in Visual Basic, for example.
Flexibility in the big Java problem (or advantage) -- there are a huge number of GUI classes, a huge number of methods that can be used in these classes, and many ways to structure the elements that you do build.
- Too many classes. There are lots of classes that are designed to be used in graphical user interfaces. However, many of these are useful only in special cases, or shouldn't ever be used.
- Too many methods. There are over 400 methods in the JTextField class (direct or inherited)! The standard Java documentation doesn't tell you which of these are useful. In fact, you will write most programs using only TWO JTextField methods. Solution. I'll tell you which methods you need to know to write the vast majority of plain vanilla applications.
- Too many ways to put it all together. Even after you know which elements you want to work with, and the few methods that are really useful, you will find out that there are a number of ways to connect them. Again the curse of flexibility gets in the way of providing a simple answer. For each reasonable way to connect up the parts, there are many that don't scales as the problem becomes larger, and will lead you down a path to eventual disaster.
- Lack of a framework. [TODO]