This Java development environment offers Webmasters all the tools they need to make sites exciting Web sites
It's not often we see momentum building behind a new technology the way it has in the case of Java. Sun's little gem solves an enormous range of problems and is more than deserving of its consistently positive press. There is, however, one aspect of Java's conquest of the Web-development-tool scene that is a bit odd: It is possibly the only major nonproprietary programming language for which there exists a dearth of professional development environments. Of course, there are dozens of Java add-ons, retrofits, and proprietary technology extension tool sets, but if you want a full-featured, professional-quality, integrated Java development environment, you have exactly one option: Symantec Cafe 1.0. And no matter what other candidates may eventually show up, Cafe is still going to offer a very appealing solution.
Humble Beginnings
Cafe started life as a Java support extension integrated with Symantec C++. Now, making its debut as a standalone development environment targeting Java applets and applications, Cafe retains the fit and finish of its distinguished predecessor, and it provides important new features to make Java development faster and more efficient.
Graphics Intensive
Designing applets with Symantec Cafe is graphically intensive. You can create both forms and menus using drag-and-drop techniques. A floating tool palette displays a set of interface controls that includes a push button, radio button, edit control, vertically scrolling list, horizontal scroll bar, checkbox, panel, and static label. You can add your own or third-party controls to the palette to extend this set as well.
Intuitive Environment
You'll find the design environment quite intuitive if you've had experience with any of the graphically oriented Windows development environments, including Visual Basic, Delphi, or the several incarnations of C++. In particular, Cafe will appeal to Visual Basic programmers who would like a bit more reach but find C++ and MFC forbidding.
After you use Cafe's graphical design tools to create the applets or application's interface, you can attach event handlers to each of the interface controls using a tabbed dialog, which organizes the presentation of all of the selected object's properties. For example, the list of standard events for a button control includes "clicked," "gotFocus," and "lostFocus."
When you choose a standard handler, Cafe generates skeleton code for it and displays the code in a three-paned window beside the form-design tools. This window is called the class editor and combines elements of a browser and source editor. In two panes, which are tiled across the top of the class-editor window, you see full application-browsing information. The one at left displays a list of the applet's classes. The browser pane at the upper right is the members pane, which displays full information for the selected class entry, formatted as expandable lists of member functions and data. The source editor pane displays the implementation of the currently selected element in the members pane.
Integration
Not only is there a high degree of integration among the elements of the Cafe development tools environment, but overall performance is good. When we used Cafe regularly on a Pentium 66 workstation with 24MB of RAM, we never encountered significant delays opening files, compiling, or debugging. This is a particular point of interest because many Java tools are maddeningly slow--particularly if they were written in Java.
Compilation
If you've used the Sun development tools, you'll notice immediately that the Cafe compiler has a dramatic performance edge in compilation. Cafe's compiler delivers the kind of performance you expect to see in a high-quality C++ environment, and is masterfully interwoven with the other tools. If you have compilation errors, the Build Output window shows the line number at which the error occurred, along with a descriptive message. Double-clicking over an error report pops you directly into the source, with the cursor positioned at the location of the offending code.
When you get a clean compile, you can test your applet with Cafe's Applet Viewer Web-page simulator. You need not initiate a connection to the Web, or suffer the slings and arrows of network congestion. Coupled with the speed of the compiler, this is one of Cafe's greatest tools.
Stomping Bugs
Java provides developers with a big reduction in the complexity of the object model when compared to a language like C++, but you'd be kidding yourself to assume that it's a shallow technology. Java is fully thread-capable and is implemented on a number of platforms that support threading. Debugging a threaded application is no laughing matter, and you'd better not even start without industrial-strength development tools. If there were one reason you absolutely need to have Cafe to do Java development, its integrated debugger would probably have to be that reason.
The Cafe debugger provides all the features you have come to expect in a high-quality C++ source-level debugger. The debugger's syntax highlighting draws attention to reserved words and data types. You can view the state of the call stack in a separate window, examine or watch the value of data members, and browse data and objects while debugging. In addition, you have a full set of thread-management tools at your disposal. The debugger's thread support allows you to suspend and reactivate threads at will, show the source, data, or call chain for an individual thread, and break on entry to a particular thread.
Cafe includes a full compliment of the Java accouterments, including the Java class library and a copy of Sun's own Java compiler. A selection of other tools includes wizards for creation of basic application and applet project templates; a hierarchy editor for manipulating the structure of object hierarchies; a full set of Java reference books on CD-ROM; and a nice Cafe tutorial.
If you are interested in creating custom Web applications, Symantec's Cafe is clearly the sine qua non for developers.
There are dozens of Java add-ons and retrofits, but if you want a full-featured, professional-quality, integrated Java development environment, you have exactly one option: Symantec Cafe 1.0.