I am so happy to be working on Eclipse platform from past 5 years. I have been playing with eclipse 3.3 from past few weeks. With too many ads on java sites about the NetBeans 6.0 Beta release, i was intrigued to have a look into it. NetBeans does come in a variety of flavours and selectable modules. I found very similar categories that i see in Eclipse, i really liked the matrix of different downloads it has.
Following are some of the modules from NetBeans and i tried to give equivalent in Eclipse.
Java SE= Base IDE + Java SE [equivalent to JDT ]
C/C++= Base IDE + C/C++ [equivalent to CDT]
Ruby= Base IDE + Ruby [ Dynamic Language Tool Kit]
Mobility= Base IDE + Java SE + Mobility Pack [Embedded and Device Development ]
Web & J2EE= Base IDE + Java SE + Web & J2EE + GlassFish v2 + Tomcat [equivalent to WTP without GlassFish and Tomcat]
All= Web & J2EE + SOA + UML + Ruby + C/C++ [I dont know what to say…]
I anyway installed the “All NetBeans Pack” and some i could go through it with few humps. Any way finally it takes 500 mb of disk space. In the end i worked few hours on Net Beans to find out quick feature set and good things about the modern IDEs. I am definitely looking for features which are coming as best of both the worlds. I did see many applications built on the NetBeans platform too and these products were great. I saw many of the graphical editors on NetBeans.
Anyway following is the criteria where i was looking into both the IDEs…
Installation: Eclipse comes as a simple zip file which need to be unzipped. That’s it you are ready to use the IDE. NetBeans comes as an exe and during the installation time it asks for the JDK location. Some how i did not like this as it could have automatically taken from system settings as eclipse does.
Startup Times: I have tested both on a laptop with Intel Pentium Dual Core 1.6GHz and 1GB Ram. I have only an IE and Windows explorer programs opened. Eclipse WTP All in One SDK 2.0 could start in 20 seconds once i chose the workspace. NetBeans 6. Beta takes around 80-85 seconds to start up once the splash screen comes.
Source Code Editing: This is quite interesting time for me in both the editors. Both has Code Folding, Code Completion, Code Formatting, Instant Syntax Checks, Code Coloring, Syntax Highlighting, etc. In my view both IDEs have great tools for editing. I am writing these experiences from my Java Editor experience.
Even though i felt some of the functions like in NetBeans are little slow. Some times thay take long time before the code suggestions comes as a list. I am not sure if this is because this is a beta version.
Compile and Build : Both have good support for Compile, Build, Clean functions. Both have Save participants and of course who would not like this.
Debugging Support: Both do have the debugging support. But i am not sure how good is the NetBeans Debugging support, if some one wants to write a new debugger with the help of Net Beans.
Some how the debugging is not intuitive in NetBeans, i closed few example project that’s came along and had only my example project (by name com.simple.solutions.testnetbeans). When i invoke the debug action on NetBeans, it does take some time before some thing happens. I am also worried that each time i launch the degug, the Feed Runner application comes up. And i am perplexed in the same way as you are right now. In the end i do not have a good experience on Netbeans in debugging a simple HelloWorld program.
Refactoring: Basic refactoring techniques are present in both the IDEs. But Eclipse does have advanced refactoring functions. e.g. when extracting a method, eclipse does show how the method looks like. Some time it also suggests the input parameters for a method.
Version Control: Eclipse and NetBeans comes with a good Team support. Eclipse comes with CVS by default. Subversion plugin can be additionally installed. What i really liked about the NetBeans is that it has both CVS and SubVersion support by default.
Help System: Eclipse and NetBeans does have help system. I am slightly disappointed by the performance of the NetBeans. I have no clue what happens when i click on the “Help Contents” menu item. I dont see the mouse icon and there is a huge hard disk activity. I did feel that transition between the pages also takes some time.
Search System: For sure Eclipse does have a advanced search system. NetBeans have a file level an project level search and replace system. But Eclipse definitely have more than that. Eclipse has File Search, Java Search and Plugin Search. And i personally use these a lot and definately miss them in Net beans.
UI Response: What ever may be the reason, Eclipse is definitely faster and it has better response times than NetBeans. Of course its the matter of how i percieve when i do a particular action in the IDE.
Profiling: Awesome in NetBeans. I like this feature which is a part of NetBeans by default. Eclipse does have some profiling tools, but they need to be downloaded additionally.
Perspective: Last but not the least, this is some thing that i definitely miss in the NetBeans. Perspecives is a great concept interms of developement and also as when an application is developed. We often develop applciations for different users and in my experience, perspectives in eclipse does a lot more than pne can imagine.
In the end in terms of features both have good feature and qualifications as IDEs to improve developers productivity. For some of the obvious reasons, i feel that NetBeans need to catch up with performance and UI feel. NetBeans does not even show a wait state icon when some long running activity is happening. The Feed Burner example takes too much of time to start up and some how my experience is rugged.
Kudos to eclipse, for its wonderful nimbleness and flawless releases. There are some other categories that i did not consider as i am not sure if i can really compare this in NetBeans. Like the EMF, GEF, GMF, DTP, ATF, RAP, etc… Last but not the least, Workspace concept is some thing that i really like in eclipse. Not sure if there is an equivalent stuff in Net Beans.