Posted by evanx
on May 6, 2006 at 10:01 AM PDT
Part 1 focussed on Geertjan Wielenga's first talk, entitled "What makes Netbeans Best?" at this week's Netbeans Day in South Africa. This is Part 2, with my notes from Geertjan Wielenga's second talk, entitled "Plug-in Development and Rich Client Platform."
See Part 1 about Geertan's talk on the distinguishing features of Netbeans 5.0.
Geertjan reminded us that the Netbeans IDE, and other Sun developer tools like Creator, are built on the Netbeans RCP (Rich Client Platform).
The Netbeans IDE is a Netbeans RCP "module suite." If you remove all the modules in Netbeans IDE, you get left with a shell which is the Netbeans RCP. This provides a framework, with many API's, eg. Action API for menus and toolbar (and many reusable modules, eg. those used by the Netbeans IDE suite).
hspace=16 vspace=4 align=left />
In the past, it was difficult to get started with the Netbeans RCP because of a lack of documentation. That has changed drastically in Netbeans 5.0, not only with documentation and tutorials, eg. on platform.netbeans.org , but more usefully, via wizards in Netbeans IDE to create RCP modules eg. an Option Panel module.
Netbeans has wizards to create wizards! Geertjan made the point that people like himself have spent a month documenting some API of Netbeans RCP, and then a wizard comes along which is more practical and useful than the documentation.
Personally i love the idea of wizards, and sample projects, with integrated documentation, rather than traditional static documentation, like a PDF. I call this "active documentation."
Netbeans 5.0 JEE Blueprints are a great example. (See Part 3 of this series.)
So there are two reasons to develop Netbeans RCP modules. One might develop modules which are "extensions" to enhance Netbeans IDE (like plugins in Eclipse, and extensions in Firefox). Or one might be developing a new application from scratch on the Netbeans RCP. This new application is a suite of modules.
Good places to look for IDE extensions are, blogs.sun.com/scblog , and nbextras.org . Also check out blogs.sun.com/geertjan .
Using the builtin support, you can build your RCP apps that are WebStartable (JNLP) and/or accessible via the Update Center infrastructure.
I have a happy suspicion that we'll see some great Netbeans RCP apps (and IDE extensions) popping up in future. Personally I'd love to see a whole desktop suite built on RCP - mail client, tabbed browser, and file browser. Then we'll really have a consistent, integrated, and extensible Java desktop!
In Part 3 , I'll cover Sang Shin's talk "What makes Netbeans the best IDE for Java EE Development?" - the last installment in this series on Netbeans Day (South Africa). Chuk Munn Lee also gave a talk on JME development using Netbeans, but i missed that - i was across the road enjoying some freshly ground java beans.