Four Java IDEs duke it out
Enterprise environments from Borland, IBM, Oracle, Sun provide remarkable toolsets
Other tools in Oracle's software-development suite provide higher-level support for Web services, such as orchestration and BPEL (Business Process Execution Language).
The principal limitation of JDeveloper lies in its UML modeling, where the product supports only the "big four" diagrams: activity, class, sequence, and use case. JDeveloper does support several non-UML diagrams such as page flows for Struts and EJB diagramming.
While not as feature-rich in enterprise architecture as Borland or IBM, Oracle JDeveloper provides all the functionality most developers will need. And given its considerable price advantage over those two competitors, it's likely to be the product of choice for many sites.
Sun Java Studio Enterprise 7
In the 1990s, few vendors offered development tools as advanced as Sun's. The company was the first to make many innovations, such as the ability to change code in the debugger and continue running.
However, Sun lost its mojo when it came to Java development tools, and it let other vendors take away a market that was rightfully its own. The release of JSE (Java Studio Enterprise) 7 is specifically aimed at
re-establishing Sun in the Java tools market. The company worked hard to refine the product and, in the process, it has delivered several unique features.
JSE is based on NetBeans, the open source platform that competes with Eclipse. Despite Eclipse's recent ascendancy, NetBeans is a worthy platform, capable of doing most everything Eclipse can do. And like Eclipse, NetBeans enjoys the support of numerous plug-in developers, even though Eclipse has a much greater number of active plug-in projects.
In many respects, JSE is unique: It provides striking features the other packages lack, and it lacks some tools all the other packages offer. JSE's two unique and truly meritorious features are collaboration and execution profiling.
The collaboration function puts all developers using JSE in a special
IM-like session so they can exchange messages, code, and all forms of artifacts. Whiteboarding support is also included, and there are separate channels for private and public conversations.
Once configured, the collaboration feature comes up automatically when JSE is started, so that by sitting down to work every member of a group is immediately plugged into the team.
JSE's other impressive feature is its load simulator. Distributed applications are notoriously difficult to test; they often require complicated set-ups in order to recreate loads that might represent real-world activity. Being able to test performance from within JSE (using its built-in load testing) means significant time savings for developers working on enterprise applications.
Although not unique, Sun's support for numerous UML diagrams is impressive -- only IBM's RSA is its equal.
Unfortunately, the rest of JSE falls a little short. It does not support Struts or JSF; instead, it uses Sun's own WAF (Web Application Framework). That's hardly a tempting alternative, as there are already too many Java technologies competing for the Web UI portion of enterprise applications.
At a coding level, JSE provides few refactorings and little in the way of code-improvement suggestions. Finally, the interface has some disturbing aspects, which suggest that the Windows version of JSE is a straight port from Solaris.