NetBeans attempts to eclipse Eclipse
Java IDE market gets tighter with Version 5.0's tech upgrades, new Matisse GUI builder
NetBeans 5.0 is a substantial upgrade to what was already a very solid IDE. This release reveals many new features, enhancements, and a slight repositioning, as Sun attempts to shine the spotlight on aspects that take NetBeans beyond the pure-play IDE.
Several NetBeans features lack direct counterparts in competing products, so it will be of great interest to sites that have specific needs such as designing GUIs for desktop Java applications and intensive collaboration requirements. However, I found that implementation details sometimes lacked care and attention to detail, resulting in a few rough edges.
Into the IDE
The NetBeans IDE is a well-designed environment for developing Java. It is more intuitive than Eclipse and, as opposed to that product, it does not get in the way of developing. You can create a complex project, code away, import resources, and build and debug the executable in NetBeans without ever looking at tutorials or consulting the help system. That’s an almost impossible feat for a first-time user in Eclipse.
NetBeans 5.0 has a large set of refactorings, extensive code completion, CVS (Concurrent Versions System) support integrated within the core IDE (support for Subversion is available by free plug-in), and practical, easily customized templates that convert short escape sequences into entire routines. These features are found in other IDEs as well, but I found their implementation in NetBeans particularly intuitive.
As do most Java IDEs today, NetBeans indicates errors and incomplete statements as you type in a manner comparable to the IntelliSense feature in Microsoft’s Visual Studio. Unfortunately, the error indicator lacks finesse in NetBeans. For example, the simple omission of a semicolon at the end of a line of code results in the entire line of code being highlighted, rather than just the errant end of the line. This is a small complaint, but along with some other minor misbehaving features, such as incorrect printing of files to HTML, it occasionally gives the IDE an unfinished feel.
NetBeans does have some innovative features at this basic level: The project metadata format is an Ant file (Ant is the default build utility in Java), which makes it possible for users of other IDEs to load up a project developed in NetBeans and make changes, even if they don’t have the product.
Enterprise Java is well supported. NetBeans bundles Apache Tomcat, which can be started, stopped, and administered from within the IDE. J2EE servers -- such as WebLogic, JBoss, and soon IBM WebSphere -- are supported in similar fashion, and NetBeans can deploy Web apps to those servers correctly -- it knows where files need to go and what the server expects in terms of configuration.
These capabilities illustrate a basic tenet of NetBeans: Tools are integrated such that you never have to leave the environment to perform development-related work. You’ll also find an integrated database explorer and an HTTP inspector (to see what data is sent to the Web app and exactly what data is returned), among other bundled tools.
The true jewels
NetBeans 5.0 also provides a built-in code profiler, automatic collaboration, and a brand-new, state-of-the-art GUI form builder. These three crown jewels distinguish NetBeans from other Java IDEs.