A lot of developers I know, in my organization as well as outside, are fanatic lovers of their favourite IDE. Just like programming language fanatics, IDE fanatics maintain that their IDE is all what they need. But in my experience, IDEs like programming languages are only as good as the developer. In my previous blog entry here, I noted that Visual Studio 2008 and netBeans 6.0 are completely different IDEs and cater to different developers. But we need to understand that each IDE has something better and makes the developer more productive. Also, please keep in mind that I'm not comparing .NET and Java here, but only 2 IDEs, so we discuss features that can be applied to both languages/platforms. Learning things from the "other" person's IDE will finally make "us" more productive. With that philosophy in mind, lets look into the comparison of 2 IDEs that will be released in 2-3 months time.
Feature | Visual Studio 2008 | netBeans 6.0 | Comments |
Supported Languages | C/C++, C#, VB.net, XAML, HTML/CSS, Javascript, LINQ (Language INtegrated Query), ASP.net, XML/XSLT, | C/C++, Java, Ruby, Php, Javascript, HTML/CSS, JSP, JavaFX, XSL, WSDL, UML | J# support has been removed from Visual Studio. So all, Java-like developers can come back home to Java. netBeans 6.0 supports a lot more languages and has an excellent plugin system to support many other languages. LINQ is new to VS2008 where you can write SQL-like queries in the programs to communicate with databases and files. XAML gets a superb visual designer in VS2008. |
Supported OS/Platforms | Windows and different versions of Windows | Windows, Linux, Unix, Solaris (SPARC, x86/x64), Mac OSX (Intel, PowerPC) | netBeans 6.0 can be installed and run on a host of different platforms. It's open-source and it's Java. So, it generally means it can run anywhere with a VM. VS2008 on the other hand is only targetted towards the windows developer. |
Code Completion | Fast code completion, but less options at a time. Need to use arrow keys. | Code completion, but shows all methods, variables available at once. | Both netBeans and VS2008 have excellent code completion. Visual Studio still is a little faster in showing method names, parameters but shows only one method at a time and you have to use arrows to check different method parameters. netBeans 6 on the other hand has improved from earlier version in speed, but still lacks the speed of VS. netBeans can show all the methods with different parameters at a time, so the developer can choose faster which overridded method to use. Eclipse does something even better with Ctrl+Shift+R. It will show all types/resource available. Which means if u write NPE, it'll show NullPointerException and NoPermissionException and you can choose. Even refactoring in eclipse is great. |
Source Code Editor | Editing is simple and easy. Switching between the designer and code screen is double-clicking the control | Editing code is simple and easy. netBeans provides different events when you right-click on the component and code can be written for that specific event. | Source code editing is equally good in both. netBeans 6.0 has a better feature where it can highlight a variable that used at different places. So you can easily identify the lines at which the variables are used when you are writing code. |
GUI and RAD Tools | WinForms, ASP Form designer are great. XAML visual designer, Database schema managers, VB-XML bindings, Vista UAC manager are some of the enhancements to the VS2008's RAD/GUI tools. | netBeans Matisse, JSF Components, Database Application, Beans Binding, Excellent UML design tools, Mobile Designer, BPEL designer are some RAD tools not found in VS2008 | Visual Studio's VB designer was excellent and probably helped VB reach great popularity. Today Microsoft expects same with XAML designer which can import designs made in Microsoft Blend. Winforms and ASP forms are great as always, may be sometimes better than netBeans. You can create the Ribbon UI of Office 2007 very easily using VS2008. netBeans until version 4 not much of a RAD tool, but today is probably the best RAD Java IDE out-of-the-box. JSF web app designer is great, maybe not be better than ASP forms, but its not behind as more JSF components are added. Swing Application Framework and Database applications are awesome and you can build amazing dB driven apps in minutes. Check out the video and you'll realize how?? netBeans 6.0 features an even better Mobile Application Designer for JavaME (J2ME), which can design screens and play with SVG menus. Haven't seen a simpler mobile app designer ever, with nice flow designer. RAD tools are something netBeans 6.0 scores higher than most other IDE |
Compiler /Loader / Debugger | Parallel compilation on multicore systems, Standard Template Library (STL) for C++ devs to use .net framework, Web Services hosting for WCF-based apps. | Newer Lexer makes faster runtime compilation, Javascript debugger with Phobos support and jMaki | Multicore compilation in VS2008 does improve performance by a good 25-30% over previous versions on C# apps. I wonder how much of multi-processors or multicore, the java compiler uses. Really couldn't compare compiler benchmarks since they are different languages. Visual Studio 2008 brings integrates web services hosting, which earlier had to be done separately by the users. netBeans has tomcat 6 and glassfish v2 integrated, so VS2008 comes on par with netBeans 6.0. Both VS2008 and netBeans 6.0 have newer javascript debugger which is a happy relief to me since previously debugging javascript was a complete pain!! |
Profiling | VS2008 improves load testing capabilities by providing a multiple machine graph view that brings together the test results, performance, and health of all the machines under test. | netBeans 6.0 has a profiler integrated and a really good one too. | A new area in VS2008 is the ability to drive system performance tuning Profiler is great addition to netBeans. While coding you can experiment and choose the best algorithms/implementations by checking memory, processes through the profiler. A load analyzer like Mercury's LoadRunner is a highly specialized 3rd-party tool, but people who want simple stuff should really be happy with the netBeans 6 profiler. |
Designing / UML | Not much Designing tools, but Visual Studio 2008 Team System does have some improvements. Team System does have nice code tracking features. | UML, BPEL, Flow Designers for Mobile apps and web apps. | netBeans scores pretty high on this one. Although you can always use 3rd-party softwares, its great to have it in the IDE itself. VS2008 is not much of a software designers tool, although the Visual Studio Team System is a great improvement. IBM's Rational is great, but then for the lesser there's netBeans UML tools. Code comparison and tracking isnt available in netBeans. Eclipse does have it and is excellent for comparing codes, but not as good as VS2008. |
Testing/Maintainance | Unit Testing tools have slightly improved, Source Control System is added to Team System | CVS is integrated. | Unit Testing is excellent in netBeans compared to VS2008. Ant tools are useful, but VS2008 creates scripts in Team System that can do nearly similar things. CVS is better in netBeans and even better in eclipse compared to VS2008. |
Installation Size | Visual Studio installation size is huge and so is the size for the setup program | netBeans 6.0 has increased in size, but is very small compared to VS2008 | Not much here to say, but VS2008 has .Net Framework 3.5 integrated with it and is a requirement. Also SilverLight CLR is added. A lot of other required libraries for WPF and WCF, which makes it larger in size. |
Misc Specialities | Visual Studio 2008 has a something called "Visual Studio 2008 Shell". Its just like the netBeans RCP or Eclipse platform. It allows developers to create their own IDEs based on the platform and we know how successful eclipse has been to do that. Read here for the discussion netBeans 6.0 also have Ruby on Rails Template for making quick blogs. netBeans 6.0 has derby as an integrated database (although JDK 6 has derby). It means you can have databases embedded within your application and no requirement for an external database server like SQL Server or MySQL. VS 2008 does not include specific tools for editing WCF's XML configuration files. After Microsoft Blend import, web designs cannot be exported back to Blend. |
Happy Coding!!
21 comments:
hi,
I would like to add couple of things which were missing about the Netbeans.
1) Visual game Builder.
2) Generic Language framework (project Schliemann).
3) WSDL editor
4)c/c++ pack(JNI)
Anyways a good comparision
cheers
http://iparams.com/blog
Thank you for your comment and observations. I have mentioned about all of those features in netBeans 6.0 in my previous posts here. I didn't want to repeat myself from my previous post, so didn't note those features in the comparison
Nice comparison between the 2 IDEs. Uncommon to find something like this.
Also, you can grow old waiting for NB on windows to open a file.
If you google for Visual Studio 2008 and IronPython or IronRuby you will find that language support for VS is more extensive than you described.
To compare VS 2008 with Netbean is a very stupid. Netbean is a joke comparing to VS 2008 and Eclipse. Maybe, compare VS 2008 with Eclipse next time.
You forget cost/price for Visual Studio 2008 and its family (very expensive). NetBeans I think it's free.
Here I am giving link to the article written by me.which explains the
22 New Features of Visual Studio 2008 for .NET Professionals
Hi Saptarshi Purkayastha, why can't you think to add a column with eclipse features also.
I dunno about everyone else..
But for my development of an M3G (3d) movile java game, netbeans has been the best platform for me.
I remember visual studio has a great feeling of ease, and if I could program real java in it I would...but since visual doesn't support real 100% java or mobile game development, netbeans is the way to go (atleast for me)
You can also program in standard Ruby by installing Ruby In Steel for VS2008. Regarding the 'high price' of VS, it's worth bearing in mind that since the launch of the VS Shell, 3rd party developers can provide VS2008 at no extra cost to their customers. Our entry-level product, "Ruby In Steel (Text Edition)", provides editing and debugging for Ruby and Rails including a copy of VS2008 with HTML, JavaScript and CSS support for an all-in cost of $49.
http://www.sapphiresteel.com
best wishes
Huw Collingbourne
I have used netbeans myself and to tell you the truth it sucks compared to visual studio 2008. The VS debugger is the best I have seen so far.
Alomgir
i have used both VS and netebans, and i gotta say VS wins hands down, netbeans drives me crazy.
Did you just mention LINQ as a supported language?? oh gosh
Hi.. i appresiate your post is really help full... i chose netbeams :)
Can you update this comparison using Netbeans 6.7?
I use both Visual Studio and Netbeans 6.7 at work for C++ development. I can hardly stand using VS any more. I hate VS' search dialog box where as Netbeans has a FireFox type incremental search.
Netbeans has click-through navigation.
I like the way Netbeans has tabbed the search results so they stick around and you can go back and look at them.
In Netbeans, double clicking on the filename tab creates one single editor window, double click again and you get back all the other windows.
Oh, geez, the graphic call graph is the bomb. Plus you get a window pane with the methods called.
the UML plugin is real sweet too.
Greg Strockbine
Nothing, but Nothing, and I say again, NOTHING, can touch Visual Studio.
The article is heavily biased toward NetBeans. Debugging c+ in NB really really horrible if you compare to VS. Project parsing in NB is incredibly slow every time you start. How convenient it is that author did not to mention VS solutions. Yeah NB has project group concept, but it cannot be saved, you pretty much stack with annoying task of recreating all the dependancies every time you checkout. With average software project having dozens or more subprojects I find it incredible that software developers working on NB did not feel the need to add this capability.
Nice article, but I have to say that netbean supports XML ( i think you left that out). And whoever said netbeans is slow on project parsing, mine does it almost instantly.. get a new computer =O. Unless you are heavily developing in c# or VB.net, netbeans has the edge over VS so I wouldn't call it biased.
but there is no Object browser in Net Beans. Net beans in not user friendly as Visual Studio...
But your the comparison is geart..!
Post a Comment