2009-06-30

Eclipse and NetBeans compared


Eclipse 3.5 released few days ago, and NetBeans 6.7 just released. Of course I am using NetBeans 6.7 starting from beta versions and I know how it works, so I wanted to test eclipse. After using it for few hours came this comparison.
Both IDEs have clean install and run.

About


Two about dialogs to show used versions



Memory usage at the beginning


Memory usage just after startup. It's pretty comparable to say "there is no winner".


Step 1: project creation


Eclipse


New project dialog:

Eclipse gives lots of options on project creation page, and defaults are quite ugly. May be that is the reason why eclipse users are never writing small projects just to test some API?...

NetBeans


New project dialog:

NetBeans gives option to create Main class for project at once, but we will ignore this suggesion for comparison purposes.


Step 2: main class


Eclipse


Eclipse shows another overloaded window. Of course first bug in package input, Ctrl+Space just does not work there. As for me to save user's time it would be better to create just empty class as soon as possible, and editor will give possibilities to modify that options.

NetBeans


Quite better options than Eclipse gives, you see all possible templates for your Java project organised in tree.

But there is next window to complete Main class creation. It's a bit more usable than Eclipse's version because of good focusing system, but still it's step 2.


Step 3: autocomplete


Eclipse 1


Basic autocomplete is just ass-ugly. No text coloration, small and not monospaced fonts just suitable to print errors, but not information for developer.

NetBeans 1


Text coloration helps more than icons, but icons differs each other if compare to Eclipse's round icons with just letter changed. And of course monospaced font.


Eclipse 2


One point to Eclipse - after autocomplete focus is given to set type of list.

NetBeans 2


Not much to look at.


Eclipse 3


Another ugly autocomplete window.

NetBeans 3


Only imported types shown. Once this was IDEA's feature and it makes good job.


Eclipse 4


It's very strange to see icons and other information here, just can't understand who needs it.

NetBeans 4


Quite lot of variants.


Eclipse 5


Cool. 5 items in list and none will work for us.

NetBeans 5


Same problem, just showed everything it knew.


Eclipse 6


Nothing interesting.

NetBeans 6


The same.


Eclipse 7


Were there any worse possibilities?

NetBeans 7


Pretty good, all found List implementations will help us. Just why to show classes from com.sun.* packages?...


Eclipse 8


Still no help from IDE! I can do the same in plain text editor, why do I need IDE like this?

NetBeans 8


Perfect. The most suitable class and full javadoc for it.


Eclipse 9


One more point to Eclipse. It's good to write type and brackets when class is already known.

NetBeans 9


No brackets... I have to press another autocomplete to see available constructors. Even no autopopup of autocomplete here.


Eclipse 10


Another ass-ugly autocomplete. No text coloration, no text alignment, some strange info about class of object, and that stupig "arg0" labels... I don't know, did Eclipse guys ever saw what they developed?

NetBeans 10


Just perfect. Bold marks methods implemented in class and plain - inherited methods, text aligned to let you browse return types with ease.


Eclipse 11


arg0?...

NetBeans 11


Well, it's really the best found option around.


Eclipse 12


Hm... no text autoquoting?...

It even can't put semicolon to the right place!...

NetBeans 12


Oh, here is text autoquoting, autoputting of semicolons... But it's NetBeans who helped me to save my time.


Eclipse 13


Wait... but there is src.zip with my JDK installation, it's full of javadocs! Why can't it just show me javadoc from there? Do I really need to go and download javadoc.zip in 21st century?

NetBeans 13


Here we go, it's not hard, is it?


Memory usage now


Memory usage after comparison above. And you will be next to say me that "native SWT is faster than interpreted Swing"? I'll write separate article about that myth.


Conclusion


"IDE" stands for integrated, but as naturally I expect my IDE to help me in my every day job. Help in this case stands for autoquoting, autosemicolons, simple and fast dialogs, and of course pretty and usable interface, that saves your time searching required items. Currently NetBeans is only IDE that really tries to help me as much as it can, though there are things to work on. And that makes me NetBeans user, not just big user base or Sun trademark.