Java tools reign
supreme - JavaWorld celebrates the
leading Java tools
Tutorial Details:
Java tools reign supreme
Java tools reign supreme
By: By Jennifer Orr
JavaWorld celebrates the leading Java tools
ava's come a long way since its first commercial release in 1995. Perhaps the best gauge of Java's success is the growth in Java tools over the last eight years: from the first applet authoring tools, to entire enterprise application development environments, to device development kits, each year, vendors roll out more and more tools to make a Java developer's job much easier. And each year, JavaWorld honors those tools that stand out in their usefulness, innovation, and commitment to advancing the language by presenting our Editors' Choice Awards (ECA).
This year marks the seventh year that JavaWorld has presented these awards. In early 2003, vendors, readers, and JavaWorld authors and editors nominated more than 150 tools and technologies in the following 10 categories:
Best Java Data Access Tool
Best Java IDE
Best Java Performance Monitoring/Testing Tool
Best Java Application Server
Best Java Device Application Development Tool
Best Java-XML Tool
Best Java Installation Tool
Best Java Book
Most Useful Java Community-Developed Technology
Most Innovative Java Product or Technology
Nominations were accepted for any commercial, open source, or free Java-based technology shipped on or before April 1, 2003.
A panel of JavaWorld writers and editors narrowed the nominations down to three finalists in each category. In making their decisions, the judges evaluated the features and functions of each technology or tool and its influence on Java. From those 30 tools, the judges then selected the 10 winners during a second round of voting. Winners receive Awards crystals and finalists, Awards certificates.
The true winners here are Java developers, who have a plethora of tools, many of which are free or open source, to ease their development tasks. Read on to find out which tools lead the pack. Finalists are listed in alphabetical order.
Best Java Data Access Tool: Oracle 9iAS TopLink, Oracle
Oracle9i Application Server TopLink is an advanced Java persistence architecture for developing and deploying enterprise Java applications that use relational databases. TopLink offers EJB CMP (Enterprise JavaBeans container-managed persistence), and persists regular Java objects as well as JSP (JavaServer Pages) and servlets. The tool's persistence infrastructure includes a GUI (graphical user interface) workbench, caching, Java-to-relational-mapping support, nonintrusive architectural flexibility, locking, and transactions. TopLink supports all Java technologies, J2EE (Java 2 Platform, Enterprise Edition) application servers, and relational databases enabled by JDBC (Java Database Connectivity).
"TopLink distinguishes itself from other O/R [object-relational] mapping tools by offering developers fine-grained control over their persistence architecture and a long list of powerful features, including optimistic and pessimistic locking, automatic type conversion, transformational mappings, and more," says Moe Fardoost, director of Oracle9i Application Server product marketing.
TopLink's numerous features stood out for ECA judge Abraham Kang, security systems architect at Apexon, when evaluating this particular category. "TopLink has some nice features such as distributed caching of clustered Enterprise JavaBeans," he says. "It also has a functional GUI, which helps with configuration."
Fardoost attributes TopLink's success to Oracle's interaction with the Java development community. "Product development is driven by developer needs and providing the features that they appreciate the most," he says.
Finalists:
CocoBase Enterprise O/R 4.5, Thought Inc.
Hibernate 1.2.4, hosted by SourceForge.net
Best Java IDE: IntelliJ IDEA 3.0, JetBrains
Our judges couldn't say enough about JetBrains's latest IDE:
"IntelliJ rocks," says Kang.
"IntelliJ did it again," says Frank Sommers, president of Autospaces. "Just when we thought we saw what's possible in a simple, easy-to-use, yet extremely powerful IDE, version 3.0 topped our expectations."
"IntelliJ IDEA is by far the best IDE for advanced developers," says Michael Yuan, a PhD candidate at the University of Texas at Austin.
Since entering the Java IDE market in early 2000, this small Czech company has quickly garnered quite a loyal following of Java developers. Vladimir Roubtsov, a senior engineer at Trilogy?a software company that lets developers pick their favorite commercial or free IDE to work with?says that most of his developers have chosen IDEA.
Some of our judges have also switched to IntelliJ. "I have tried many IDEs each year when I review the latest crop," says Daniel Steinberg, director of Java offerings at Dim Sum Thinking. "Until last year, I always returned to a text editor and command-line tools. Now I use IDEA."
Kang also notes its appeal over other development environments: "IDEA has doubled my efficiency with its extensive refactoring tools, customizable quick keys, templates, Ant integration, and automated common programming tasks. Once you have tried IntelliJ, you will never go back to your previous IDE."
IDEA's refactoring abilities kept coming up again and again in our judges' comments, as did the tool's simplicity, flexibility, and intelligent editor. Nevertheless, Sommers had one complaint: "This IDE is addictive. At first, I used it to edit my Java code, then I started using it for my XML editing needs, and next I started using it to manage JSP-based Websites with it. I will probably use it for Web service development as well."
Finalists:
Borland JBuilder 8.0, Borland Software
Eclipse 2.1, Eclipse.org
Best Java Performance Monitoring/Testing Tool: JUnit 3.8.1, JUnit.org
For the third consecutive year, JUnit again finds itself a winner in our performance monitoring/testing tool category. JUnit Director Kent Beck attributes JUnit's continued success with the Principle of Mutual Benefit:
"Using JUnit makes programming more fun for programmers and more valuable to their employers, and makes the results more useful for users," he says. "There is also a social aspect, where JUnit was championed by two guys [Beck and Erich Gamma, who both wrote the tool] who already had reputations as hackers. So writing tests went from something they did (the quality assurance department) to something we did. Some of our technical decisions also played into this, like the use of the ordinary programming language as the testing language (most testing tools have their own embedded special-purpose language)."
ECA judge Tarak Modi, senior specialist with the North Highland Company, appreciates that particular feature of JUnit: "I do not spend too much time writing tests in some cryptic language. The learning curve is almost nonexistent, and the benefits are realized almost instantaneously."
Indeed, simplicity made this tool a favorite among our judges. "JUnit may not be the most feature-rich testing tool," notes Ju Long, a research associate at the Center for Research in E-commerce, University of Texas at Austin. "But since it is so easy to use, it is widely adopted. That makes it the most important tool for unit testing."
Finalists:
JProbe 5.0, Quest Software
Optimizeit Suite 5, Borland Software
Best Java Application Server: BEA WebLogic Server 8.1, BEA Systems
Though IBM and BEA continue to publicly bicker over who leads the application server market, this race to one-up each other continues to benefit developers: the Java application servers keep getting better and better, especially, according to our judges, BEA WebLogic.
"All of the app servers are pretty much J2EE 1.3 certified, but BEA is still the leader when it comes to features and functionality built on top of J2EE," says ECA judge Kang. "BEA's integrated tools ease development, integration, management, and monitoring."
Version 8.1's new features include tools that simplify development and deployment, standards-based Web services functionality, a performance increase of more than 30 percent, new monitoring capabilities, and training services.
Future releases will focus on enhanced management and administration, as well as standards support for the latest technologies, says Eric Stahl, director of product marketing at BEA Systems.
"WebLogic Server maximizes developer productivity, reduces the cost of operations and management, and drives standards-based integration into the enterprise, helping customers get ahead in an increasingly competitive world without damaging the bottom line," says Stahl. "As the fastest server available, it allows administrators to configure a cluster in just minutes, as opposed to hours or days with other vendors' application servers."
BEA's superior performance was just one of the deciding factors for ECA judge Roubtsov: "BEA WebLogic Server continues to lead in performance and standard compliance," he says. "WebLogic tends to support the most recent Java API levels and is an exceedingly developer-friendly product."
Finalists:
IBM WebSphere Application Server 5.0, IBM
JBoss 3.0, JBoss.org
Best Java Device Application Development Tool: Java 2 Platform, Micro Edition (J2ME) Wireless Toolkit 2.0, Sun Microsystems
Sun's J2ME Wireless Toolkit (J2ME WTK) helps programmers develop wireless applications with Java. It includes an emulation and testing environment for those applications targeted to Java-enabled devices that implement the Mobile Information Device Profile (MIDP) and related extension APIs. For version 2.0, Sun added support for the MIDP 2.0 specification and features, making J2ME WTK the only tool that currently provides such capabilities. J2ME WTK 2.0 also includes support for testing over-the-air downloading and installation of MIDlet applications, the Wireless Messaging API, the Mobile Media API, new device skins, and new gaming APIs.
"J2ME WTK is the mostly widely used tool for MIDP development," says ECA judge Yuan. "It can be use
Read
Tutorial at: Click here to view the tutorial
Rate Tutorial: Java tools reign
supreme - JavaWorld celebrates the
leading Java tools
View Tutorial: Java tools reign
supreme - JavaWorld celebrates the
leading Java tools
Related
Tutorials:
3D graphics programming in
Java, Part 3: OpenGL
3D graphics programming in
Java, Part 3: OpenGL |
Best tools for
mobile application development
Best tools for
mobile application development |
Java Testing and Design
Java Testing and Java Test and Design is the companion to any book on Java software development practices, techniques, and testing. Software developers, QA analysts and IT managers working in large corporate IT groups, software development companies, and |
Practical Reflection: an excerpt from Hardcore Java
Practical Reflection: an excerpt from Hardcore Java
In this chapter from Hardcore Java, "Practical Reflection," Robert Simmons Jr. writes: "Reflection is one of the least understood aspects of Java, but also one of the most powerful. Reflection is used i |
Monitoring Local and Remote Applications Using JMX 1.2 and JConsole
Monitoring Local and Remote Applications Using JMX 1.2 and JConsole
The latest release of Java, J2SE 5.0 (codenamed Tiger), adds core support for the Java Management Extensions (JMX) 1.2 into the Java standard libraries. This article walks you through h |
Build scripts with Groovy and Ant
Build scripts with Groovy and Ant
Summary
In nearly all developers' toolboxes, Ant is the standard build tool for Java applications, thanks to its open, standard, and multiplatform structure. Though it represents a great improvement in automating produc |
Using SSL with Non-Blocking IO
Using SSL with Non-Blocking IO
After the initial experiments with Java NIO, most developers start wondering about security; in particular, how to use SSL with Java NIO. With the traditional blocking sockets API, security is a simple issue: just set up an |
Integrate COM and Java components
Interoperability issues have long made integration of Microsoft® Component Object Model (COM) and Java™ components a daunting task. The Development Tool for Java-COM Bridge, available from IBM alphaWorks, simplifies the job and also provides an evoluti |
SOFIA 2.3 released with Hibernate and Dynamic HTML components
SOFIA 2.3 released with Hibernate and Dynamic HTML components |
Jakarta Taglibs
This project is an open-source repository for JSP custom tag libraries and associated projects, such as TagLibraryValidator classes and extensions to page-creation tools to support tag libraries. |
Atricle Struts, JavaServer Faces, and Java Studio Creator:
The Evolution of Web Application Frameworks Sun Microsystems' Craig McClanahan, the creator of the Apache Struts Framework, co-specification lead for JavaServer Faces 1.0, and prime architect for Sun Java Studio Creator's new release, explains all three. |
HPROF: A Heap/CPU Profiling Tool in J2SE 5.0
Having performance problems with your Java Application? Using too much Java heap space and don't know why? Sometimes simple software tools are all that's needed. |
J2ME Wireless Toolkit 2.2
Now available.This version of the toolkit is fully compatible with the Java Technology for the Wireless Industry (JTWI) specification (JSR 185). |
Sony Ericsson Developer World Program
Learn at-a-glance about the Sony Ericsson Developer World global support program and web portal totally dedicated to helping serious wireless developers achieve business success by providing the documentation, tools, training, technical and support. |
Sony Ericsson Developer World Program
Learn at-a-glance about the Sony Ericsson Developer World global support program and web portal totally dedicated to helping serious wireless developers achieve business success by providing the documentation, tools, training, technical and go-to-market s |
Manage Database Metadata with POI and Excel
Set up quick and easy database metadata housekeeping with the Java Apache POI libraries and Microsoft Excel. |
Migrating From Microsoft Windows to the Sun Java Desktop System (pdf)
System administrators interested in migrating from a Microsoft Windows operating system to the Sun Java Desktop System can refer to this Sun technical white paper, which gives step-by-step migration procedures and a description of the interoperability be |
BioInformatics Tools
BioInformatics Tools
BioInformatics Tools
The Bioinformatics tools are the software programs for the saving, retrieving and analysis of Biological data and extracting the information from them.
Factors that must be taken into consideration when |
What is Persistence Framework?
What is Persistence Framework?
What is Persistence Framework?
A persistence framework moves the program data in its most natural form (in memory objects) to and from a permanent data store the database. The persistence framework manages the |
Sun Java Desktop System Now Supports Solaris 10 OS
Sun Java Desktop System, Release 3 is now available on the Solaris 10 OS, along with management tools and some free and trial development tools. |
|
|
|