Jacob and Other Tools
Well, the most obvious things that Jacob is missing, is a debugger, a gui
builder and maybe an object-oriented modelling tool for UML (unified modelling
language). Following are some of my recent thoughts regarding such tools.
When I started programming in Java the sun's standard debugger was completely
broken. When Symantec entered the scene with Cafe, their debugger was also
not very stable and not usable for anything more than applets. Therefore
I completely gave up on using a debugger.
But surprise surprise I don't miss a debugger anymore. With Emacs,
all my debug (print) statements go into a big buffer. That gives nice trace
information and with Emacs search functions it's very convenient to look
at the data no matter how much information is printed out. That way I can
run through the whole program, and can then look at the details that matter
(ignoring a bulk information), no need for time consuming single step walkthroughs.
Of cause, the drawback is that a) a lot of debug statements a riddled across
the sources (oh oh, they shouldn't be counted as source statements as I
do right now) and b) these statements must be typed in.
Also I find the idea to use a debugger to step through absolutely every
single line of new code before doing the first test run very appealing.
I haven't looked at jdb again and i don't know if there is a comfortable
way to use it inside of Emacs. But just recently I looked at IBM's pure
Java debugger JD and I like
it very much. It's maybe not fast, and not that much comfortable, but it
seems pretty stable and powerful (for me it didn't crash in the debug mode,
but when playing to much in the class's list). Maybe I won't use it on
a daily basis, but sure I will use it for 'special' problems.
Maybe I will do an interface to start Jikes out of Jacob/Emacs with
the right parameter.
GUI Builder (01/12/1998)
Hmm, still looking for a decent gui builder. The one of Sun's Java Workshop
looked very good. But my version expired and it's not fun downloading such
a monster with a modem ;). The problem with most gui builders I have seen
so far is that they have their own intermediate format or are messing up
with the source code. I do not want to get locked to a special tool or
additional package library just because I created some forms with this
tool. JForge by Cameron
Newham seemed to be the right solution for me, even if it's a small tool.
It creates source code, but recreates the layout information out of the
compiled class file. Unfortunately it's unusable as long as no one fixes
the SpringLayout manager that JForge uses. Or is it intended that space
between two components that can vary gets always evenly distributed between
these components. Sad that Sun dropped the SpringLayout manager in swing
0.7. A good SpringLayout manager should be generic enough for almost all
situations and because windows start with default coordinates it should
be also very fast. I have the feeling, GridBagLayout for more complex dialogs
is sometimes very slow. Anyway, looks like I will stick some more months
to handcoding my dialogs with a more comfortable version of a GridBagLayout
OO Modelling Tool (01/12/1998)
Rational Rose seems to waste its (our) time with Visual Basic for Applications.
Anyway, I always had the impression they rely more on their sales force
than on their development team.
Right now I am only aware of one pure Java UML tool, LOREx2.
I don't find it very usable, but let's wait and see if this or something
else will grow up.
(05/15/1998) Well, meantime Together/J
gained some ground and seems to be quite popular by now. I haven't had
the time yet to play around with it, but I hope it's usable and if it is
possible I plan to write a wrapper class for it to connect it to Jacob.
Back to Jacob's home page.
Clemens Lahme, email to: Clemens.Lahme@gmd.de