I’ve spent most of the day in room 135, the Desktop room. There’s
been a lot of good stuff here, but there aren’t any outlets to make
sure my old Dell can stay online. Actually, there is one outlet,
but the union folks keep telling us not to use it. Oh well.
Building Native-Looking, Great-Feeling Applications with JavaTM Foundation Classes (“J.F.C./Swing”) APIs
presented some of the changes that the NetBeans team made from 3.5
(which is widely regarded as ugly) and 3.6 and 4.0 (which are a lot
better). The best message from the meeting is that we shouldn’t
misuse components. They had a great image of a coffee-toaster;
take a toaster, wrap it in saran wrap, then pour in the grounds and the
water. Sure, you can do it because a toaster makes things hot
like coffee needs, but it’s still not a good idea. The biggest
example of that in NetBeans is the overuse of SplitPanes. The
showed a new windowing toolkit they are preparing for 4.0 and beyond
that will be able to handle windows much better. The also had
specific recommendations like setting borders to
BorderFactory.createEmptyBorder() instead of a null Border because the
L&F could interpret null as an invitation to do what it
wishes. There were a lot of such useful tips, and I’ll be
referring to the presentation in the future.
How to Build a Cool JavaTM Foundation Classes (“J.F.C./Swing”) Technology Application
was the first Kartsen Lenztsch session I attended today. After
talking about his BOF last night, I know I sound like a fanboy, but I’m
simply impressed by his ideas with Swing, and by the improvements his FormLayout allowed us to make in our code. Karsten made the interesting statement that this session was less important than his Improving a JavaTM Foundation Classes (“J.F.C./Swing”) Technology User Interface session I attended later, and really this would be better after the Improving session. Improving
showed how to take your application from a really ugly GUI to a
functional GUI, and “Cool” showed how to add some Swing animations,
transparency, and other neat tricks. Of course, you should try
these tricks unless you’ve taken care of the bigger problems
first. “Cool” was better-attended, and that might be because it
was “Advanced” and Improving was “Beginner.” Also, Improving
seemed to be a replay of Karsten’s session on FormLayout in 2003.
So, the information was very valuable, but it was too much of a review
for me. You can get a lot of the information from the JGoodies
Project Looking Glass: A JavaTM Technology-Based 3D Desktop Environment
was a very popular session, but much of it was already covered in demos
in the pavilion. I’m still not convinced that Project Looking
Glass will be anything more than a toy, but it does look very
cool. They also discussed the architecture a bit, and asked for
help with tools, downloads, and ideas.
Monitoring and Management of the JavaTM 2 Platform, Standard Edition (J2SETM)
was the first session not part of my Desktop day. Other bloggers
have covered this well, so I’m not going to try to recall
everything. However, there are a lot of interesting tools that
I’ll have to use when we transition to Tiger.
Developing Outside the Container was the other non-Desktop
session I saw today. The speaker was from BEA, and he had a lot
of hints about Mock Objects, Inversion of Control, and Factories.
These are great ideas, but they weren’t anything new. We’ve done
most of that, plus using the Locater pattern and a J2EE RI jar outside
the container to be able to use EJBs without our appserver
running. Of course, the BEA guy wouldn’t have said anything about
that, so I shouldn’t have expected anything.