After my last post on NB and Eclipse, you might think that I'd never go anywhere near NetBeans again. Well, predictably enough some things (chiefly HL7, Ruby and RDF) have dragged me back to NetBeans and Java, so I grabbed NB 6.0 Beta 1 and gave it another try.
Much, much better. Somehow, the startup time has been reduced quite a bit, everything felt faster and the whole tool is shaping up rather well. A complete contrast to my previous (and quite recent) experience. I played with the startup settings to improve performance even further (details somewhere below) and now I'm quite happy with it.
You do need to spend a bit of time with NB to appreciate just how good it actually is: the code editor features outshine Visual Studio quite easily - better refactoring support, better code navigation being the two I immediately appreciate. Simple example: want to go to a definition? Hold down CTRL and statement elements become hyperlinks. Adding libraries and references is as simple as in VS, and you can create project groups which are similar to VS solutions. I've barely scratched the surface.
The set of plugins in the default download of NB 6.0 provides a lot of functionality, not all of it really ready for daily use, in my opinion. The UML support appeared good until I tried to use it for a substantial reverse-engineering job: it took a long time and the resulting class diagrams were slow and awkward to render and navigate. Not really a priority for me, though.
Subversion support is also provided and this is definitely a priority for me. Sadly, this appears to be weak, too. First, NB appears unable to import new (unversioned) projects: the 'Import into Repository...' command seems to be permanently greyed-out. Oddly, the 'Commit...' command is available even though the project folder is completely unconnected to my SVN repository. If I invoke that, I get a partial list of new files in the grid, and the option to commit them; clicking the commit button apears to work, but after a while I see a popup dialog saying "Action canceled by user", even though I did nothing!
Ruby support is good, but I'm a novice Ruby developer and have yet to exercise all the Ruby features. The ever helpful Roman Trobl has provided some good Flash demos of Ruby support: I recommend watching the demo of NB's RoR support, where Roman builds a bare-bones blog application in a couple of minutes. I haven't found a better Ruby IDE yet.
I plan to put more information on using NetBeans on the Java section of my Wiki, especially for folk coming to Java and NetBeans from a Visual Studio background. So far I've only added a note on the configuration settings I've adopted which improve performance considerably - more soon.
How long can this last? Well, on the evidence of the last few days, I'm optimistic.