Looking for a Java IDE?

Daily Newsletters

Sign up to ZDNet UK's daily newsletter.

ANALYSIS
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.

Post your comment

In order to post a comment you need to be registered and logged in.

You can also log in with Facebook. Log in or create your ZDNet UK account below

  • Login

Will not be displayed with your comment

By signing up for this service, you indicate that you agree to our Terms and Conditions and have read and understood our Privacy Policy. Questions about membership? Find the answers in the Community FAQ

Get ZDNet UK's daily newsletter

Enter your email address to sign up

ZDNet UK Live

BrownieBoy

@Jack, > Works really well for thieves.... Nice attempt to deflect the argument by tossing in a point that's totally irrelevant, even it were...

12 hours ago by BrownieBoy on AMD Ultrathins to challenge Intel Ultrabooks
bootlegger

Make that 13 people now - I got refused today at Manchester airport. I thought I was up to date on this legislation - I knew of the EU ruling from...

15 hours ago by bootlegger on UK airport body scans will not be opt out
tinycg

Don't forget to check out apps like GoodReader or SlideShark either, they're indispensible for people on the go in presentation situations. Best...

18 hours ago by tinycg on Four top iPad apps for people on the move
TerryRK

Well it seems there is something a number of us agree on. Why is the Ubuntu Unity launcher so ugly? I thought perhaps it was something to do with...

22 hours ago by TerryRK on A tale of two distros: Ubuntu and Linux Mint
Freebies202

Duplicate comments are not made intentionally. Its very good to know that now you are keeping check on this problem because sometimes a commenter...

1 day ago by Freebies202 on Microsoft fixes blog comments, speeds up blogs with open source
kevinmchapman

"the very significant number of users" and "many (most) of us" - you have no evidence for these statements. It is a fact that most users are saying...

2 days ago by kevinmchapman on A tale of two distros: Ubuntu and Linux Mint
Marg Menzies Harrison

Another grammar faux pas is the improper use of "you". When sitting down down in a restaurant, for example, I get cringe when the waitress...

2 days ago by Marg Menzies Harrison via Facebook on 10 flagrant grammar mistakes that make you look stupid
zdnetukuser

And NOW, folks, for Canonical's next trick... Kubuntu is late. Here's a pencil. Draw your own conclusions. cf.:...

2 days ago by zdnetukuser on Linux Minterface
Moley

@kevinmchapman. The discussion here reflects the very significant number of users who really do like the traditional menu system and who wish to...

2 days ago by Moley on A tale of two distros: Ubuntu and Linux Mint
kevinmchapman

Er, no... It is an efficient means of finding the application/file/setting you need in one place. The icons are a simply a fallback for when you...

2 days ago by kevinmchapman on A tale of two distros: Ubuntu and Linux Mint
TerryRK

Isn't the provision of a text based search an admission by the developers that the mass of icons approach does not work? I don't need to use a...

2 days ago by TerryRK on A tale of two distros: Ubuntu and Linux Mint
kevinmchapman

"Unity and GNOME 3 both abandon the old text-based cascading menus in favour of a graphical icon-driven system." Point truly missed. Both use a...

2 days ago by kevinmchapman on A tale of two distros: Ubuntu and Linux Mint
TerryRK

whs001 - Thank you, I'm glad you liked the article. I absolutely agree with you on your first point. I should perhaps have made it clearer that...

2 days ago by TerryRK on A tale of two distros: Ubuntu and Linux Mint
Dennis Nilsson

If we allow corporate interest to dictate the way our government circumvents due process against foreign entities then we should accept the same...

2 days ago by Dennis Nilsson via Facebook on ACTA stumbles in Germany
GHar123

I totally dislike pirating of works, I fear that artists will be deterred from creating works if they think that they are going to get ripped off....

2 days ago by GHar123 on ACTA stumbles in Germany
JCB33

How dare film makers, artists or anybody that invests in creativity stop us pirating their works for free. I want to be able to walk into my local...

2 days ago by JCB33 on ACTA stumbles in Germany
Moley

@GrueMaster. I prefer horses for courses rather than one size fits all. I, and I suspect most other computer users, do not really wish to have...

2 days ago by Moley on A tale of two distros: Ubuntu and Linux Mint
greycynic

The product that scares me every time I have to use it is the Office 2007 version of Excel. The first bug that I found was applying the median...

2 days ago by greycynic on Ten flawed products that derail productivity
GrueMaster

Nice review and very informative. One thing I'd like to add (in reply to whs001's 1st question), the main reason to have the same interface from...

2 days ago by GrueMaster on A tale of two distros: Ubuntu and Linux Mint
Frederick Wrigley

I'be been using Mint 12 since the RC came out, and I am far more happy with the Cinnamon, the Mate, and, yes (with extensions), theGnome 3...

3 days ago by Frederick Wrigley via Facebook on A tale of two distros: Ubuntu and Linux Mint

Latest in Application Development