Posted by evanx
on May 7, 2006 at 11:08 AM PDT
This is Part 3 of my notes and impressions from Netbeans Day (South Africa), held in Johannesburg this week. This final installment covers Sang Shin's talk "What makes Netbeans the best IDE for Java EE Development?"
This is Part 3 of my notes and impressions from Netbeans Day (South Africa), held in Johannesburg this week, and covers Sang Shin's talk "What makes Netbeans the best IDE for Java EE Development?" (See Part 1 about Netbeans IDE 5.0 features, and Part 2 on Netbeans RCP).
Health warning: the italic text is just me rambling and so should probably be skipped.
Sang Shin is a Java evangelist from Sun. See his site, javapassion.com . This has a very cool master tutorial index - check it out.
Sang Shin (and Geertjan) emphasised that Netbeans offers an unrivalled "out the box" experience, eg. it comes bundled with servers, namely Tomcat and the Sun App Server. Just one download, and you're good to go. A Netbeans 5.5 preview is available with bundled Glassfish (JEE 1.5 with EJB 3.0), and of course you can develop/deploy to JBoss and WebLogic. Support for Websphere is coming soon. (One of the new features in 5.5, is the generation of entity classes and CRUD JSF pages from a database table, as Geertjan writes .) I read that Derby (which i think Sun is calling "Java DB") is gonna be bundled in future Netbeans releases.
I must say, i love that Netbeans works out-the-box - for one thing, this makes it easy to upgrade to a newer release without hassle - whether you are a desktop, mobile or web developer. (By the way, for this reason, i think it's worthwhile switching from HSQL to Derby for Netbeans-ready demos and such - and to Glassfish too.)
Excuse me for gushing, but the thought of Netbeans 6.0 with integrated Derby and Glassfish gets me so excited, i gotta jump up from my computer and walk around the garden to calm down! It is so 100% "good to go" - just add coffee! What a pleasure for the next generation of developers - we never had it so good before. The golden age is dawning, with fantastic languages, libraries, tools, databases, servers, frameworks, components - all freely available, and cross-platform - with tutorials to rule them all - and with Netbeans, it's all in one little download. Compared to the 1990s, and the 1980s... oh man!
With its out-the-box experience and integrated tutorials and sample projects, Netbeans is shaping up to be the killer app for "embracing and extending" the next generation of developers. Visual Studio is not cross-platform, so forget it. IntelliJ is not free, so forget it. Eclipse is... not Netbeans, so forget it ;)
So lemme get back on topic, to Sang Shin's talk...
The "JEE Blueprints" are integrated into Netbeans, and what really impressed me is that you can create runnable projects from the blueprints! This is a great example of what i call "active documentation." You go from reading some documentation, to having the relevant code as a sample project in one click - just press F6 to build and run!
Sang Shin made the point that in reality one would use an Ajax framework such as Dojo or DWR, rather than the sample code that is generated from the "blueprints" module. Such frameworks offer a high-level API that abstracts browser differences and incompatibilities, eg. Mozilla vs IE, and different versions, eg. IE 5 vs IE 6, like simulating XMLRequest for older browsers using iframe. Also they take care to handle web programming intricacies such as "back" button. And they provide useful widgets and goodies.
My impression is that an Ajax standard still has to been shaken out of the JSF tree, and in the meantime, one would use Dojo (a client-side toolkit), or DWR (which is also great at invoking server-side objects directly, without having to implement servlet wrappers around remote objects), or another Ajax toolkit. But honestly, i wouldn't know, because i'm a Swing developer, innit.
So that wraps up this series on Netbeans Day, South Africa. I wish there as a weblogger module for Netbeans already, so i could have written these blogs in Netbeans!