Terry C. Martin

Friday, February 25, 2011

Netbeans 7.0 Beta

I'm thoroughly an Eclipse user and have been for about 7 years now. I love my frequently-used key bindings. However, pretty-much every year, I revisit an old friend - the IDE I started with (more-or-less) in the Java world, Netbeans. It all began around 1999, or maybe '98, I actually don't quite recall. Back then, it was called Forte4Java and it was slower than molasses (to be fair, all Java apps were at that time). Back then, I didn't really know what I was doing and wasn't doing Java development full-time, I just played with it from time-to-time. I eschewed Eclipse back in the early 2000s for its lack of completeness for the kinds of tasks I frequently did back then. Namely, I built web apps for deployment on big-bloated app servers. I didn't know ant at the time, so I thought Netbeans was awesome because I could start a web application project and it would build my war file for me. It was a mystery to me, how some of my coworkers were building their web apps with Eclipse. I now know they weren't - being forced to write ant scripts to war up their files instead. Eventually, I found myself at a job where I was forced to use Eclipse, actually WSAD. Somewhere along the line, I decided to really learn the more frequently-needed key bindings and within a very short time, they became so indispensable that I began to feel somewhat crippled whenever I visited Netbeans. Each year though, I download the latest offering from Sun (now Oracle), in the secret hope that they've finally reached parity with Eclipse in terms of refactoring and editor intelligence.
I recently started writing a Java-based game engine for my 10-year-old son to possibly use. I started off thinking I might try to teach him J2ME (not that I know it myself) so that he could code for the little Java-capable phone we allow the kids to share when they go out. I liked the mobile development add-ons in Netbeans, so I went ahead and downloaded the latest beta. After a while, I began to think I needed a game engine that would be simpler than what I was seeing with J2ME, so because of that, plus curiosity as to whether I could do it, I decided to try writing one myself. I guess I just stuck with Netbeans partially to give it a thorough going-over and thinking that perhaps it'd be a bit simpler for my 10-year-old to get around in (compared to Eclipse, which can still be a bit spartan out-of-the-box).
Anyway, the first thing I did in Netbeans, this time, was to immediately turn on the Eclipse key bindings. I've been fairly pleased with the 'emulation' shall we call it. It's been better than I remember from previous iterations. However, the whole thing that made me want to write tonight, is one thing that I JUST CAN'T UNDERSTAND! I wanted to inline a method that I'd mistakenly factored out, and to my great surprise, there apparently is no function to do it. Truly, I just can't understand this. I've long been puzzled by many of the refactorings that have been missing from Netbeans over the years, and I suppose this should not be any different. I'd really like to understand why they don't just go ahead and blatantly rip-off EVERY refactoring that exists in both Eclipse & IntelliJ (which by now, should probably be about the same anyway). Is it really that hard, all these years later? I just don't get it. Are they trying to prove a point, as if to say "We've gone this long without implementing all their features. To do so now would be to admit to failure.". If that's the case, I've got news for you, Netbeans developers, you pretty-much have failed as far as I'm concerned. I've heard of no shop where Netbeans is in large use other than (and I'm assuming this) Sun. What's really bad about it is, this doesn't have to be the case. They've been so great at developing an IDE that comes with virtually everything a typical Java dev would need, right out of the box, EXCEPT ALL THE STANDARD REFACTORINGS! Come on guys, just make a list of EVERY refactoing in Eclipse, then implement them. Pretty please! You can do it. I have faith in you.

0 Comments:

Post a Comment

<< Home