20050328 星期一 2005年03月28日

Netbeans RCP In Action (1)

These days, I have investigated the Netbeans RCP(Rich Client Platform), and developed some module on it. Netbeans is not only the Java IDE, Netbeans.org has provided netbeans platform as an application runtime for build rich desktop application, just like eclipse platform. The "plugin" here is called "Module". Every module is a "nbm" file that could be loaded by their module class loader. The module's information is stored in the manifest file in the Module file.

The netbeans platform has been developed since 1999 when NetBeans 3.0 was rewriten, and the latest version is 4.0. With it, developer could focus on the business logic and NetBeans platform will provide ways to handle module management, UI management, preference management and etc. and it provides rich APIs to help the developer to do customization. see more at http://www.netbeans.org/products/platform.

Like Eclipse, there's also the extension concept in Netbeans Module Runtime, moreover it is based on a J2SE standard for extension registration - META-INF/services. You can checkout the detail information from here. And NetBeans Service registry is also based on J2SE standard extension mechanism (http://java.sun.com/j2se/1.4.2/docs/guide/jar/jar.html#Service%20Provider).

Netbeans's Module runtime support dynamic module register/unregister/update feature (deploy the module on the fly), which are not supported in Eclipse 2.1(But have already been supported by Eclipse 3.0 using OSGi standard). And Netbeans RCP provide the module update center to help the developer to manage the modules.

After the release of Netbeans 4.0, most of the IDE related things have already been striped out from netbeans platform, and the core size of netbeans platform core has been downsized.

Netbeans has a long history, the story is very interesting, also, there's many applications that already take the advantage of Netbean RCP, you can check out detail information here.

Currently, there's no module development enviroment in netbeans, so the module development work is a little hard, and the beginning learn curve is a little higher. Hope we will get the "MDE"(so called :-)) in the later version. here's the road map of Netbeans.

Then, how to develop a module using netbeans platform? From my experience, it's not so hard. Stay tuned, I will give the demo in the later chapter..

( 2005年03月28日, 11:42:07 下午 GMT+08:00 ) Permalink 评论 [1]