In June 2001, Borland released the latest version of the JBuilder
series. Borland is an ever-popular presence in the Java IDE market,
but with most IDEs now offering the same functionality, is there
anything to set JBuilder apart?
It must be said from the outset, JBuilder 5 boasts some very
nice features "on the box." IDEs have been screaming out for the
packages and integration of technologies that JBuilder 5 promises are
"under the hood."
- Rapid J2EE application development
- XML tools
- Deployment to multiple application servers
- Team development file management integration with MS Source-
Safe, Rational Clearcase, and CVS
- JSP
- JavaBeans
Features
Borland seems to have packed everything possible into
JBuilder 5. Initially, there were some reservations regarding how all
these features, such as team development tools, would be presented
and managed. The chaps at Borland would have to get it right for it
to be both practicable and useful.
After using the IDE for a couple of weeks it is my happy duty
to report that this is indeed the case.
The main interface is well laid out and highly configurable,
as you would expect, with the normal array of debugging and project
control options present by default. Almost everything is menu-driven and those friendly wizards
we've all become accustomed to are available for most of the more
commonly used features.
These wizards can sometimes be more of a nuisance than they
are worth. They seem to take away some of the learning process
regarding what the IDE is doing when it sets all our classpaths and
creates neat packages. But, as wizards go, the ones I tried were easy
to use and performed the job well.
We've all used applications that fill the screen with almost
every available option/feature. Information overload if you like. Given that most of us don't have screens the size of a small cinema, it usually takes a bit of pruning to get a suitable screen.
This is not the case with JB5 (see Figure 1) since the
information is hidden behind tabs. This works extremely well as it
enables information to be displayed when you want it as opposed to
the IDE "guessing" what you would like.
Figure 1:
You may have noticed the Cocoon application and, no, it isn't
a misprint. One of the more pleasing elements is the ability to build
straight to the familiar Cocoon Web ARchive format. As Java finds its
way into more and more of today's (and tomorrow's!) Web sites, the
ability to deploy solutions straight to a .war package ready for
distribution is both an excellent idea and well implemented.
JBuilder 5 includes a Tomcat 3.2 plugin (the Enterprise
Edition also has Borland and WebLogic) so add a third-party Web
server, such as Apache, and it's easy to see how you can compile,
run, debug, test, and finally deploy from the comfort of one
interface. The distribution also includes Borland's own AppServer 4.5.
The supplied wizard does it all for you by providing a
complete Tomcat-ready solution with context mapping. What more could
you ask for?
This doesn't mean it's painless. You still have to ensure
dependencies/library files and that everything is set up "just so"
from within JBuilder, but you would have to do this anyway! Both
Enterprise and Professional editions have this built-in.
Another tasty feature is the support for version control
packages such as CVS, SourceSafe, and Clearcase. I haven't used all
these packages but, of the three, CVS is familiar and bundled with
JBuilder 5. Hurrah for open source.
This process would normally entail having at least two
applications open, the IDE and the control package, so to have it all
integrated in one place is an excellent aspect of this impressive IDE.
By using the menu options and filling in the blanks, I
created a repository and incorporated it into CVS within minutes,
giving full version control.
The Enterprise edition allows you to control and create
projects deployable to work stations (see Figure 2).
Never has it been so easy to maintain version control over
even extremely large projects.
Figure 2:
Deployment
As the features of JB5 were explored it quickly became
apparent how much thought had been given not only to the possible
deployment of a given project, but also how all the necessary steps
could be combined to make this a painless operation.
As my development career has advanced I've developed a manner
of "getting the job done." This would involve compiling to the
standard class directory structure for initial testing/use with a
final switch to .jar packages for deployment. Most IDEs allow this to
happen painlessly. JBuilder takes this to another level.
You can create both a class directory structure and a .jar
package when you build, and that's not all. If your current project
is also a Web app you can build this too - all at the click of a
button. This applies across the board so you won't find yourself
constantly updating the project properties to reflect what's required
from any given task.
Somebody at Borland has thought about this. We, as a
community of Java developers, must applaud and commend some of the
tools Borland offers with this latest release since more time can be
devoted getting on with the juicy bits. Several times I caught myself
going ooooh, it does that? And ahhhh, that's cool.
All this has overhead so the constant building and deploying
is not recommended for general use; however, it's easy to see that a
lot of the deployment burden has been eliminated.
Note the specification of the two machines this IDE was
tested under. Never being a shy one, this was adapted and several
configurations tried (even to the extent of being slightly naughty
and trying to cram it all into a 64MB system).
The results - it appeared processor speed was not anywhere
near as important as masses of memory. Nearly all applications will
run in direct relation to the amount of memory and JB5 is no
exception. It performed admirably on both processors with 512MB
installed. It says 128MB on the box, but if the intended use is to
run alongside Web servers and other apps, then seriously consider the
total RAM in the target machine. 256MB will provide comfortable
levels.
The overall footprint isn't that much and doesn't appear to
overstep similar products. JB5 sits at 2-4MB with the JVM starting at
40MB and rising to over 80MB with a medium-sized project. It also
isn't a resource hog. There's nothing worse than an app that eats up
10% of your processor just by being in existence, something that has
been avoided.
Help System
The help system is a bit haphazard. My personal preference is
to use the Find option, gain a list of general items, and drill it
down that way. This wasn't an easy task, however. Borland ran a link
to almost every word in the help system - useless words with
irrelevant meanings (aardvark, abbot) have links to equally useless
information.
It's not impossible to use, but I found it a bit like a
search result on the Internet, having to wade through the dross,
keeping an eye open for that key phrase that gives you what you want.
The Manuals
Not content with simply informing us how to use their
product, those clever chaps at Borland have included general
programming/Java-related principles from bitwise operation to
serialization. In addition, you'll also find introductions to Web
applications and XML. Superb.
Steve Jobs' endorsement of Java (at last) at JavaOne 2000 has
prompted a release on the Mac OS X platform. It's a delight to see
this. Borland had one or two forays into the Mac software market a
few years ago, but not since. Hopefully this will help bring total
Mac-derived applications to the marketplace, which can only be a good
thing.
JB5 has made it easier than ever to control and deploy
large-scale solutions by providing many of the tools with which to do
so. It has an intuitive front end with all the main features catered
for and available with the minimum configuration. Borland has managed
to get the mix between simplicity and functionality that others seem
to find evasive.
Borland Software Corporation
100 Enterprise Way
Scotts Valley, CA 95066-3249
Phone: 831 431-1000
Web: www.borland.com
E-mail: customer-service@borland.comM
Test Environment
Windows 2000 Professional, Intel PIII-450MHz, 128MB RAM
Windows 98SE, AMD Duron-800MHz, 512MB RAM
Supported Platforms
Solaris: ULTRASPARC2,
Solaris 7,8
Windows: 98, 2000, NT 4.0
Linux: Red Hat 6.2, Mandrake 7.2, Caldera Systems 2.3, SuSE 6.3, TurboLinux 6.0
Mac: OS X (4th quarter of
this year)
Reviewed by
Tom Inglis