c-- styles for logos and headline links do not modify internet, red, or black styles -->
|
|
|
|
|
|
|
|
Borland International Inc.
By Sachin Gangupantula
Although only two years old, JavaTM has grown impressively from proto-
Borland JBuilder was one of the first tools to leverage the power of Java 1.1, including JDBC and JavaBeans. Well known for its impressive line of development suites -- think Delphi, IntraBuilder and C++Builder -- Borland delivers in JBuilder a worthy addition that will please Java developers. JBuilder marks the company's entry into the Intranet/Intranet Java programming arena. Together, Borland's JavaScript automation tool IntraBuilder and JBuilder have the potential to make a killer combo for designing Web-to-
Like other Borland tools, JBuilder comes in three editions to support users from personal programmers to developers of mission-
I reviewed the Professional Edition of JBuilder, which adds the extra wizards, graphing components and a database tool set.
Borland's documentation has always been solid. This package came with hard copies of the User's Guide and excellent Programmer's Guide to supplement the online help. In addition, Borland is scrupulous about posting errata and updates to its web site. JBuilder is one of the better documented Java RAD tools on the market today.
JBuilder provides next-generation Rapid Application Development tools for high performance Java-based development. It brings to the table a host of features that has already made customers -- and competing vendors -- sit up and revise their wish lists:
JBuilder comes with the classic IDE Borland pioneered in Delphi. With its award-
Like all tools of this ilk JBuilder supports project- The following are minimum system requirements to install the Professional Edition of JBuilder:
A complete install needs around 100 MB, normative for current Java RAD tools to support the ever-growing feature set. For this review I used a Windows 95 machine with 32 MB RAM. Despite my having only the minimum recommended RAM, the installation went smoothly, adding the necessary entries to the Windows 95 Registry for the extensions used by JBuilder.
Upon launching JBuilder, you see the main window and AppBrowser. The main window contains the menu bar, tool bar and a tabbed component palette (Figure 1). The menu and the tool bar provide the routine tasks that you perform using any RAD tool.
I particularly liked the Component Palette, which lists the available visual and data-access components (including Beans) that can be dropped onto the application window. The Component Palette also provides a clean interface for importing your own classes to extend Borland's IDE.
The AppBrowser is divided into three panes. The two left panes contain a tree and the corresponding detail for the object or the directory view of the project. The right pane (Content Pane) provides a window for the code, design or documentation view of the project. The AppBrowser is all you need to examine an entire project, so becoming familiar with this view is key to using JBuilder effectively. You can browse into source files, class files, zip files, and jar files--a single viewer for understanding the structure of your code.
The extensible design of the IDE is a welcome feature that allows a developer to customize not only the look and feel but able to add new components, wizards, Objects as they become available - a true Object-Oriented environment.
Creating a new application, applet or project is an easy task, as Borland has incorporated a Wizard for each. All of the Wizards create the new Jbuilder project file Welcome.jpr with configurable template code. Powerful as the are, the Wizards are a potential source of confusion when it comes to choosing between a new application/applet vs. a project. This is because the Application and Applet wizards themselves launch the Project Wizard (if there isn't already a project open). Neophytes may wonder just where in the lifecycle JBuilder is taking them.
The Applet Wizard (Figure 2) presents a series of screens which allow you to specify the comments, documentation, applet parameters, HTML page and comments.
Event Handling, the essence of interactive GUI design, can be added to projects with minimal labor thanks to JBuilder's interface. Select the button in the UI Designer, then switch to the Events page in the Inspector and double-click the event of interest. JBuilder takes care of creating not only the event handling stub but also the components necessary to hook up the method to the control. See Figure 3.
JBuilder's Debugger is quite complete with most of the features you find in today's RAD tools: thread, variable, and stack windows, the ability to set conditional breakpoints, and so on.
Deploying all of the classes associated with an applet is one of Java's least straightforward features. JBuilder streamlines the task with a Deployment Wizard that helps gather and bundle the requisite pieces.
As is common with the current Java tools, all isn't well and complete without looking at a tool's support for Java-based database application design. Fortunately, the most attractive part of JBuilder is its database integration. In addition to providing access to the SQL data through the JDBC API, JBuilder provides additional set of tools called, DataExpress that simplifies data access when used within the RAD environment.
Creating a database application is a three step process, which can either be implemented using visual data access tools or programmatically. The key is to set the dataSet property of the UI controls to the data-aware controls provided by JBuilder(DataExpress).
JBuilder provides excellent sample database applications with the installation.
Voila! You iterate Steps 2 and 3 for each of the UI controls to return data. In the Figure 4 you can see the simple search screen I created with two data-aware controls.
Step 3 is illustrated as the Age UI control's dataset property is set to the AgeQuerySet object. In addition, JBuilder allows you to create updatable and parameterized queries, Stored Procedures. It provides synchronization of several data-aware controls by associating them with the same dataSet. This greatly simplifies database design without the added overhead of managing several events to update GUI controls.
JBuilder uses standard Java 1.1 APIs, such as BeanInfo classes in creating the reusable JavaBeans components. It allows source-code editing and debugging of JavaBean components. Developers can build BeanInfo classes with JBuilder's BeanInfo tool, which guides them in formatting the required statements.
Once a newly created JavaBeans component is added to the JBuilder, it offers a wizard that lets the developer choose from the list and the events it can generate. There are over a hundred JavaBean components available that can be integrated into the JBuilder environment.
On the downside, JBuilder cannot change the source code of a running program. It doesn't provide a visual modeling tool to graphically depict Bean interactions as in IBM's VisualAge for Java (see Aron Benett's review for details). Nor does Borland's Professional Edition have the repository-
On the plus side, JBuilder's pace-setting IDE provides superior debugging environment and project management, standards-
JBuilder Standard costs $99.95. JBuilder Professional costs $799.95 for new owners, $299.95 for owners of any development tool, or $249.95 for owners of any other Borland development tool. Estimate Street Price (ESP) for the Client/Server Suite is $2,495, or $2,000 for Borland tool owners.
Borland has a proud history of opening programming languages to the general public, from C and C++ to Pascal and Prolog. With JBuilder, Borland brings its accumulated experience to Java and the Internet. Even at version 1.0 this product is a top contender, and it has nowhere to go but up.
Java and other Java-based names are trademarks of Sun Microsystems, Inc. and refer to the family of Java-branded technologies. JBuilder is a trademark of Borland International Inc. All other trade names are property of their associated companies.
|
The extensible design of JBuilder's IDE lets developers add new components, wizards, and objects as they become available-- a truly object- environment. ial,Helvetica" COLOR="navajowhite">The Author
|