http://www.developer.com/

Back to article

The Java Tool/Add In of the Year Winner Outshines the Rest


January 12, 2006

The category of Java Tool/Add In of the Year makes a couple of important distinctions from the Development Tool of the Year. For one thing, this is a Java-focused award, whereas the Development Tool of the Year included Microsoft Visual Studio 2005 and Eclipse (which would imply that Eclipse is, correctly, treated as a cross language IDE because it supports many other languages and platforms than Java).

Also, the category covers add-ins as well as tools; in other words, plug-ins for other tools also qualify for this category. This means that even small, well targeted, add-ins from any source—be it big corporation, small company, or open source—all can compete for this award.

With that in mind, let me tell you about the winners and runners-up in this category.

The Finalists

This category proved to be a popular one for the 2006 awards, and six products were nominated. Those products are:

mBooster

Innaworks mBooster is an automated optimizing compiler aimed at the Java Micro Edition developer. The product reduces the memory footprint and increases the performance of Java ME (formerly known as J2ME) games and applications.

The product is currently at version 2.1 and sports a stack of impressive and well-targeted optimization strategies, including:

  • Re-compression of jar, image, and sound files to reduce memory usage
  • Class hierarchy refactoring
  • Method in-lining

And many more optimizations aimed at both the application as a whole, and "interprocedural" optimizations.

If your development depends on Java ME, and you want to make it faster and smaller, check out mBooster.

OptimalJ

OptimalJ from Compuware is described as Model-Driven Development for Java. The product enhances IntelliJ IDEA (see below) and adds advanced architecture analysis and performance profiling capabilities as well as enhancing the already strong refactoring support in IDEA.

The modeling, based around UML and with an emphasis on agile approaches, drives the development process and allows architects to be architects, guiding and shaping the overall design before getting stuck into the coding. It is available in three flavors—Professional, Architecture, and Developer editions—with a different focus for each flavor based on the role of the developer it is intended for.

A full set of features can be found at http://www.compuware.com/dl/OptimalJDEFactSheetFINAL.pdf.

IntelliJ IDEA 5.0

From an add-in to IDEA to the IDE itself. IDEA always puts in a strong showing in Java development tool awards, based on a very loyal following for the product.

Although IDEA is not one of the IDEs that I regularly use, I have never heard anything but great stuff about it from those who do use it. The compliments range from "it practically writes the program for you," through accolades about the use of sensible defaults throughout the development experience, to the excellent refactoring support that is one of the biggest features of the product.

The list of features are excellent, with support for Java EE, Ant, JUnit, and source control products. The editing environment has intelligent coding assistance (the basis for "it writes the program for you") and advanced code automation. Over 200 plugins are available from the Jetbrains site, and it is hard to imagine a refactoring you would need that is not provided.

Features new in 5.0 include:

  • Java ME (formerly J2ME) support
  • Many new refactorings
  • New plugin API to make construction of plugins easier
  • Subversion integration
  • Editor supports Java, JSP, HTML and XHTML, CSS, JavaScript, and XML

And many, many more.

The new plugin API is a fairly recent development and is aimed squarely at simplifying development of IDEA plugins, hence bringing more plugins to IDEA. This move appears to be a response to the growing popularity of (and huge number of plugins for) Eclipse.

There is a reduced cost version of IDEA for academic users who qualify, and a mechanism to get open-source projects approved to use the IDE for free, and right now there is also a special "personal" version available for half price ($250); it can be used for non-commercial use.

IDEA is available for Windows, Linux, and Mac OS X

JBuilder 2005 Enterprise

Borland's JBuilder has a long history of excellent Java development support. One of the first companies to get in on the game with Java development, JBuilder has long been the choice IDE of many big companies, and has always provided a large feature set and a great deal of flexibility.

The strong points associated with JBuilder include an excellent attention to detail, resulting in a consistent and very polished product, and excellent help system. Some of the slightly weaker points compared to competitors include limited UML support, and collaboration.

Three versions of the IDE are available:

  • The flagship Enterprise edition, which is aimed at full Java EE development and includes all of the Java EE standards, as you would expect. Support is also included for a broad range of Java Application Servers, both commercial and open source.
  • Although the Enterprise version of the IDE won the award, it is worth noting that a less expensive Developer edition and a free Foundation edition are also available. The Developer edition drops the full support for Java EE, but still provides a great deal of functionality to the professional Java developer. Foundation is a free unrestricted version that can be used for personal or commercial usage and provides a no-risk way to try out the IDE.

In perhaps one of the more controversial decisions in the Java world recently, Borland has decided to provide a parallel set of plugins for the Eclipse IDE that mirrors the functionality of JBuilder. This has upset many of the JBuilder fans I have talked to, and also caused a great deal of speculation that Borland will eventually drop JBuilder as an IDE in favor of Eclipse. For now, at least, it is clear that Borland will keep JBuilder development running in parallel with the Eclipse plugins.

JBuilder is available for the Windows, Linux, Mac OS X, and Solaris platforms.

NetBeans

Over the past two years, the rate of adoption of Eclipse has been nothing short of astounding. Equally astounding, though, over the same time period, is the rate of improvement in the NetBeans IDE.

There is little doubt that the furious activity in the NetBeans camp is a response to the popularity of Eclipse, but whatever the reason, the results are spectacular, and there are a few recent, relatively high profile "switches" that have taken place from notable Eclipse users to NetBeans. Whereas NetBeans has a long way to go before challenging Eclipse in market share, it's clear that the NetBeans developers are dead serious about doing just that.

For me, the staggering improvements became noticable in the 4.0 and particularly 4.1 release versions. Unpopular features (such as the need to "mount" filesystems before they could be used) were dropped and replaced with more familiar concepts. The look and feel was greatly improved (partly due to NetBeans and partly due to improvements in Java 5). The IDE, which has always been open source, also started to gain newly open-sourced functionality from its commercial cousins (most notably Sun Java Studio Enterprise), like Java EE support, collaboration, and profiling enhancements.

I use both Eclipse and NetBeans regularly, and I will be honest and say there are things that I like about each one. The strengths of NetBeans over Eclipse (because this article is about NetBeans and not Eclipse) include a better "out-of-box" experience; in other words, Java EE, visual GUI development, and many other common development features are available from the get-go, without needing to install various plugins. The IDE also feels more "planned" and consistent than recent versions of Eclipse, which appears to be experiencing some growing pains most likely due to the sheer number of plugins being developed. Also, as a developer, I love that ant is an integral part of the project build process. NetBeans doesn't simply export a partial ant build script when asked; it uses ant at the very core of its process as a master of ceremonies for the entire build.

Also, the profiling and Java ME add-ons for NetBeans are, in my opinion, best of breed for the Java development space at present.

NetBeans 5.0, getting close to final release, is continuing the rapid rate of improvement. In particular, the new Matisse GUI builder in 5.0 addresses one of the biggest complaints left in visual Java development, that of the complexity of swing layouts, by providing Java swing development "as it should be."

NetBeans does still have a few weak points, though. Refactoring support, while present, lags behind most of its competitors, particularly Eclipse and IDEA.

Like Eclipse, NetBeans is completely free and open-source, and many people will find that it is easier to download, get in, and start coding (particularly for swing and Java EE development) than Eclipse. For Java ME development and the excellent profiling, I highly recommend it.

NetBeans is available for Windows, Mac OS X, Linux, and Solaris.

And The Winner Is...

Java Studio Creator 2

Version 1 of Java Studio Creator was winner of Developer.com Java Tool of the Year for 2005, and version 2 continues the success and wins the 2006 award.

Java Studio Creator 2 is a tightly focused Web app development IDE. It provides little in the way of support for creating EJBs, Web services, and many of the other Java EE server technologies, but does have excellent support for consuming those technologies from a client perspective. This is what makes it such an important product.

The emphasis for Creator is on a client facing the development of Web applications in Java, and it is very good at that. The tool will be instantly familiar to developers used to other RAD client tools such as Visual Basic, Delphi, and ASP.NET in Visual Studio. Creator, unlike many of the Java IDEs available, does not overwhelm you with development options and standards, and concentrates on making developers very productive as quickly as possible.

Dan Roberts, Director, Developer Tools Marketing comments "With the continued growth of the Java developer community, which is now over 4.5 million members, it is imperative that we continue to enhance our technologies to meet the growing needs of developers worldwide. The enhancements we are delivering to our Java Studio Creator developer tool will make it even easier for developers to deliver innovative web applications, which will further the growth and adoption of Java technologies."

Based around JavaServer Faces (JSF), which are an integral part of the simplified approach, and a component-based development approach, Creator provides a leading rapid development environment for creating Java based web UIs. Components can be dragged onto the page and laid out visually, then data from Databases, EJBs, or Web services can be visually bound to those components, again using drag and drop.

Unlike many other such high-level tools in the Java world, while the experience is very simple, it is also transparent, allowing power developers to dive in under the covers and see what is going on. There is no magic here, just a well thought out and designed approach to rapid development.

Java Studio Creator 2 brings a number of important improvements over version 1, including:

  • New components: An entirely new set of components that are a great improvement over the ones available in 1.0 (the originals are still available if required). The new components include file upload, calendar, tree, and a vastly improved grid, as well as a number of much more complex composite components ready for use. The new components are also fully and easily themable.
  • NetBeans 4.1 is now used as the base platform, bringing speed and reliability improvements as well as the ability to use Java 5 in Creator projects. Refactoring support is also available as a result of this change.
  • Data providers for EJBs are now provided (and fully supported) as well as generic providers for JDBC rowsets and Web services. You now also have the opportunity to creator your own dataproviders, allowing drag and drop data binding to any legacy or custom system you like.
  • A new and extremely useful HTTP monitor that can be used to examine all traffic sent to and from the application server during a session. This lets you easily drill down into the HTTP requests and responses, and check that the values being sent over the wire are what you would expect (or help you track down why they are not).
  • Support for construction of JSR–168-compliant portlets.

Because Java Studio Creator is based on the NetBeans platform, it inherits many of the advantages of that platform. A particular favorite of mine, like with NetBeans, is the integration of ant into the overall build process, meaning that the IDE writes your ant scripts for you and the whole process lends itself very well to automated headless building for releases.

Without a doubt, the importance of Java Studio Creator is a mix of the speed and simplicity of Java Web UI development, and the approachability of the tool for developers migrating from other RAD tools or who are simply new to Java. It is also now free for everyone to download and use (just register with the Sun Developer Network for free), so if you were considering jumping ship to Ruby on Rails, TurboGears, or one of the new generation of dynamic scripting-based Web frameworks, you might want to see what Java and Creator 2 have to offer first.

Java Studio Creator 2 is available for Windows, Mac OS X, Linux, and Solaris. Although version 2.0 is not yet final, it will be very soon now, and in the meantime those interested can download the free EA 2.0 version to check it out.

To see the entire list of Developer.com Product of the Year 2006 winners go to www.developer.com/lang/article.php/3576286.
.

About the Author

Dick Wall is a Principal Systems Engineer for NewEnergy Associates, A Siemens Company based in Atlanta, GA that provides energy IT and consulting solutions for decision support and energy operations. He can be reached for comment on this and other matters at dick.wall@newenergyassoc.com. He also co-hosts The Java Posse, a podcast devoted to Java news and the Java community, which can be found at http://javaposse.com

Sitemap | Contact Us

Thanks for your registration, follow us on our social networks to keep up-to-date