In its enterprise edition of VisualAge for Java 2.0, IBM delivers a heavyweight product that's well-suited to application developers. It pulls ahead of competitive enterprise-class development tools from Inprise Corp. and Microsoft Corp. by introducing Data Access Beans that extend connectivity to relational data residing in legacy systems.
The Enterprise Edition delivers several new features: team support, high-performance compilers optimized to generate native executables to run on platform-specific servers, plus support for Tivoli Systems Inc. management software and the Common Object Request Broker Architecture.
There's also a professional edition, which caters to single developers and small teams.
I worked with the Enterprise Edition and found that it brings to Java a Visual Basic-like ease of coding, without the limitations of Visual Basic's Win32-centric focus. It also provides the type of improved productivity and superior portability of C++.
Although VisualAge doesn't support the wide variety of third-party add-ins that C++ does, it now includes an application programming interface for integrating third-party add-ins that could make it easier to add new components and tools. Another new feature, JavaBeans, simplifies Web-enabling relational Java Database Connectivity databases, a feature that should interest electronic-commerce merchants.
New file formats
One innovation in VisualAge is the elimination of the familiar file-based model for storing Java source code, keeping the code in a hierarchical repository of program elements. Enterprise Edition has a shared repository on a server. That architecture offers powerful source control with a tightly structured ownership scheme. Every project, package and class has a nominated owner.
That architecture lets developers in large-scale team development projects concentrate on the logical organization of code without having to worry about file names or directory structures.
Like most development environments, VisualAge includes an interface designer, Visual Composition Editor, that lets you arrange JavaBeans (controls) on a display service. VisualAge improves on the concept by letting you set up connections between objects, linking the events of one to the methods of another. That lets you produce elementary Java components without writing any code.
Unfortunately, when you do write code, the coding window displays just a single method's source at a time. If you switch to another method, the current method's source is automatically saved. That can generate annoying compilation errors. A potentially serious problem occurs when you test your applet. Any changes made in the current source window aren't automatically saved and, without warning, VisualAge runs the previous version. When you type source code, an automatic code completion feature provides a list of language elements by context. I prefer Microsoft's Intellisense, a feature that progressively suggests statements.
If your environments extend significantly beyond Windows, or the way your team builds code suits VisualAge's hierarchical source-control structure, the Enterprise Edition will suit your needs. If your requirements are more modest, consider Inprise's JBuilder or Microsoft's Visual J++.
(Millman operates Data System Service Group LLC, a consultancy in Croton, New York. You can reach him at +1 (914) 271-6883 or firstname.lastname@example.org.)