InformationWeek Labs matches Java tools SuperCede 2.0 and Apptivity 2.1 with their most appropriate tasks
By Jeff Jurvis
here's no question that Java is maturing. The Java architecture is expanding outside of the Internet realm into consumer products and server applications. The Java integrated development environments available to corporate developers today have evolved from their early stages as C++ IDE spin-offs to high-performance tools optimized for distributed application development.
SuperCede 2.0 from SuperCede Inc. and Apptivity 2.1 from Progress Software Corp. are two such Java IDEs. SuperCede's roots are in C++ rapid application development. Apptivity, on the other hand, is oriented toward the development of Corba-based distributed Java applications.
The first ancestor of SuperCede appeared in the early 1990s as a high-productivity, quick-turnaround C++ environment. Soon after, SuperCede 1.0 appeared with the same high-performance, rapid-development goals--but with Java at the core instead of C++.
SuperCede 2.0's feature list stands up well to the leading competitors--Symantec Visual Café, IBM VisualAge for Java, Microsoft Visual J++, Sun Java Workshop, and Progress Apptivity. The multiwindow environment includes a drag-and-drop forms-based user interface editor, Java Database Connectivity to most corporate databases, and interactive debugging integrated with the source-code editor. The debugger includes a handy "scratch area" in which you can write and execute complex code fragments in context of the running application. You can also set up code to run at specified breakpoints. The debugger's BackTrack feature provides a way to fix faulty code, rewind code execution back to a place before the fix, and retry it. SuperCede's debugger is one of the most versatile of all Java tools.
Another standout SuperCede feature is Visual Basic form migration. VB forms can be imported into SuperCede and automatically converted into Java source code with comments indicating code that requires further manual translation. Help in starting from a Visual Basic form is great, but there's no help for starting from scratch. SuperCede needs the kind of project and application wizards included with Apptivity, Visual J++, Visual Café, and others to help jump-start and streamline the creation of common applications and components.
JavaBeans fit well in SuperCede's component-based IDE. Beans are easy to use, create, and package. SuperCede supports drag-and-drop interoperability with ActiveX controls as well. Plus, due to its C++ genes, SuperCede lets you mix C++ code with Java code by importing C++ source code or by calling precompiled C++ libraries. Of course, mixing C++ source code or ActiveX controls is not consistent with 100% Pure Java, so any application that does mix and match Java, C++, and ActiveX will be a Win32-Intel executable, not a platform-independent applet.
You can achieve 100% Pure Java platform independence via SuperCede's complete implementation of Java Development Kit 1.1 for applets and applications. But SuperCede's real strength is in high-performance Win32 applications.
The most unique aspect of SuperCede is the Flash Compiler technology that overcomes Java's notorious performance problems. The default JDK environment produces Java bytecodes--an intermediate step between source code and machine-specific object code. Bytecodes are platform-independent and zip around networks quickly and securely.
But once the bytecodes arrive at the client computer, they must be interpreted (or compiled) into native code. This step adds too much overhead for applications that depend on fast execution.
SuperCede's answer to high performance is the Flash Compiler. Java source code, Java bytecodes, C++ code, ActiveX controls, and other components are compiled into standalone, platform-optimized executables and dynamically linked libraries. The Flash Compiler is also a just-in-time compiler that dynamically executes Java applets and applications on the client at faster speeds than the bytecode interpreter, but not as fast as native code.