ZDNet UK


Skip to Main Content

ZDNet.co.uk - Winner of Best Business Website 2007
  1. Home
  2. News
  3. Blogs
  4. Reviews
  5. Prices
  6. Resources
  7. Community
  8. My ZDNet

 

ZDNet UK RSS Feeds


IT Jobs

Application development Toolkit

Looking for a Java IDE?

Lamont Adams Builder.com

Published: 02 Oct 2002 13:53 BST

  • Email
  • Trackback
  • Clip Link
  • Print friendly
  • Post Comment

I personally am sick of the glorified text editors that, by virtue of providing a graphical interface for the Java command-line compiler, deign to call themselves "integrated development environments." On the other hand, I'm also quite tired of the bloated, slow, "feature packed" environments that tend to get in your way more often than they actually help you get work done and that don't seem to get any better with each new release.

I'm going off on this brief rant to give you some idea of how low my expectations were for IntelliJ's IDEA Java IDE, which was recommended to me by a member our own Java development staff. I'm hoping that by keeping my preconceptions in mind, you'll appreciate my enthusiasm when it comes to IDEA.

The first time I used IDEA, I was able to set up a new project and start coding in under two minutes, without getting lost or having to refer to the manual. Over the course of the last few months, I've logged around 100 hours using this IDE, and I have yet to experience a single crash, had to fight with a single ill-conceived feature, or even had cause to crack open the documentation files. That's more than I can say for any of the other, more established, Java development environments I've seen recently.

A host of productivity features
IDEA's premise is simple enough: Make programmers as productive as possible. It includes a slew of productivity aids that, shockingly enough, actually make it easier to work with Java. The various tool windows located around the main editor window can be set to automatically expand when you mouse over them and to collapse again when they're not needed, so you can get maximum screen usage.

The editor is smart enough to help you out but still simple enough to stay out of your way, full of "nice touch" features like automatically importing a package for you when a class is first referenced in your project. IDEA's version of code completion, known as "SmartType," is on par with what you'll find in a Microsoft development product: As you type characters, the list of available options narrows, and the method-level help window includes parameter information. Borrowing another tactic from "the enemy," IDEA also uses the "put a red line under it" method of syntax error highlighting, and its background syntax parser can inform you of quite a few compilation errors as soon as you type in the code.

Heavy-duty refactoring support is built in as well. IDEA has options for the basic stuff: It can scan and replace class, method, and variable names within a given scope and automatically update references when relocating classes to different packages. It can even update comments and string literals when doing so. You can copy and paste entire classes into different files, perfectly formatted, and extract an interface signature, method signature, or a superclass from any class in your source code.

The technical stuff
IDEA's integrated debugger supports both local and remote debugging, although you may need to tinker with some settings for the latter to get it working properly. In addition to providing the usual watch, stepping, and manual breakpoint functionality, you can set automatic field access and exception breakpoints and even browse variable values while in break mode via a convenient tree.

The IDE supports multiple JVM configurations, several compilers, and the Ant build system, and it makes configuring multiple custom classpaths easy. All these settings are controlled via a project information dialog box, so each of your projects can use different settings with a minimum of fuss. I wasn't able to find a way to copy any of these settings from one project to another, which is a minor annoyance, but one I can live with. IDEA also provides built-in support for several change-management systems like Visual SourceSafe, the open source CVS, and Perforce.

Final impressions
IDEA has a very clean, uncluttered layout. The auto-hiding tool windows, which I generally don't like, are very effective here, probably because they are activated by mousing over discrete areas of the screen, all of which are clearly marked. There's none of the wrestling with docking locations that plagues many other IDEs here. IDEA's menus are logically laid out, and you can easily locate almost any command you'll need via the top-level menus, keyboard shortcuts, or the context-sensitive right-click menus, which IDEA makes effective use of. I should also mention that the main editor window supports scrolling by mouse-wheel. (Yes!)

IDEA concentrates on coding features, with a minimum of the "enterprise" clutter found in other IDEs. IDEA is about writing and maintaining code and supports those activities well. The only things I found myself wishing for while using it were a RAD-style GUI builder and a quick way to jump to a particular method or class in a source file -- this is possible using the Structure tool window, which groups the methods and classes in your project into a hierarchical tree, but I'd prefer to have access to a quicker method. I guess my Visual Basic roots must be showing. I was particularly impressed with the interface implementation, method override, and refactoring tools. Very simply, IDEA is a coder's dream, obviously developed by a team with intimate knowledge of Java. It's got a very reasonable price tag, to boot.


Have your say instantly in the Tech Update forum.

Find out what's where in the new Tech Update with our Guided Tour.

Let the editors know what you think in the Mailroom.

  • Email
  • Trackback
  • Clip Link
  • Print friendly Print with Dell

Did you find this article useful?
27 out of 60 people found this useful


Full Talkback thread

0 comments


Company/Topic Alerts

Create a new alert from the list below:







Related Jobs

Head of Interface Web Manager - West Midlands

In this role you will be the owner for front end user interface of our main .com site, and command a small but growing team of front-end design & ...

Business Product Support Analyst - Spanish/German/French Speaking

You will need to have an excellent financial background, in-depth knowledge of investment asset classes, i.e. This exciting opportunity will offer ...

Flash / Actionscript Web Developer 30-35k Gloucester

Required Skills Flash / Actionscript 1/2 Coding Skills XHTML CSS JavaScript XML Photoshop & Flash Design Skills You will be required to have strong ...

Discussions

harpless harpless

SAP goes big business

Friday 25 July 2008, 6:17 PM

1 comment
pjc158 pjc158

Will Drizzle rain on Sun's MySql

Friday 25 July 2008, 5:30 PM

1 comment

Featured Talkback

The fact is: Software developers today are really designers and not coders. The reason that business anlaysts exist today to model solutions is because they understand the value of designing software before writing it. All too often developers create code that has little value because they do not understand that business classes interact with other classes within the confines of a working model or pattern.

By: 1000165269

Read full story:
Making sense of agile modelling