Java IDE Overview

Jetbrains IntelliJ IDEA

I once read in a forum somewhere on the internet, the rather large statement that, "IntelliJ IDEA was the best IDE I have ever used, regardless of language". Something like that anyway. After much scoffing at this, I ended up deciding that I should check out this much vaunted IDE. Boy, was I glad I did!

After playing around with IntelliJ IDEA for a month in the trial period, I ended up in agreement with the previously mentioned forum user. Going back to Borland's JBuilder felt like punishment after having used IntelliJ IDEA.

The most amazing thing about this IDE, is that it just seems to be so natural to use. Comparing a feature chart of IntelliJ IDEA and one of its competitors just does not do this program justice. It's the ease of use and the power that seemingly pops up in front of your finger tips. This was made by people who know what software development is about, and how to make a slick product.

Eclipse

Eclipse is the Java IDE with the cheeky name (think Java and Sun). It was open sourced by IBM, creators of previous efforts such as IBM's Visual Age for Java (enough to make me cringe already). A bunch of other big name companies have jumped on the bandwagon and Eclipse has risen in popularity very quickly and gained a huge support base.

Whilst it has crashed on me every now and then, for the most part it has been pretty stable.

Given that it is free, I guess you can't complain... hang on, yes I can. Especially when you are forced to use it ;)

My pet annoyances in version 2.1.3 (Yes, I know Eclipse 3.0 is released, but I haven't really used it enough to comment)

  • To get a lot of the functionality provided with other IDEs, you need to download plugins. Many of these are free and some not as well supported as one might like. As a first time user it is quite difficult to find the correct Eclipse plugins to suite given tasks. I hope this is somewhat remedied if you lay out the cash for IBM Websphere Application Studio (WSAD) or one of the other rebadged versions.
  • There are so many places for options in this IDE that it is hard to find/or remember where to go for what you want.
  • I don't find it very intuitive to use. I find it is quite a time consuming task to get an Eclipse project running the first time you use it. There is a lack of features compared to other IDEs from a default install.
  • It is sometimes restrictive, for example with directory setup it enforces certain structures. This can be a real pain for example if you are using an old directory structure and "upgrading" from a different IDE.
  • Are Eclipse key mappings based on Emacs or something? Whatever they are, they are damn strange. **Ctrl + K** for "Find Next".
  • You need to hold down **Ctrl** and then move the mouse for the "Go To" (eg go to method declaration underneath the mouse) option to become available.
  • Break points don't always cause the IDE to gain focus and you sit there wondering what is happening until you remember the existance of this feature.
  • The "Fast View" auto-hiding docking window feature always puts windows to the left. I might want them down the bottom, for example.
  • I didn't find the documentation particularly good, but it is better than a lot of open source projects.
  • The general feel of the debugger I find annoying.
  • Keeping track of plugin updates is not easy. Would be nice if there was a manager that kept track of this. But now I'm getting picky.
  • Okay, I better say some nice things now.

    Really neat things to know about Eclispe 2.1.3

  • **Ctrl + Shift + T** Opens brings up the "Open Type" window where you type the name of the class you want to go to. Beats trying to find it in the tree-view, particulary on large projects with complex tree structures.