Jump to: navigation, search

Rich Client Platform

While the Eclipse platform is designed to serve as an open tools platform, it is architected so that its components could be used to build just about any client application. The minimal set of plug-ins needed to build a rich client application is collectively known as the Rich Client Platform.

Applications other than IDEs can be built using a subset of the platform. These rich applications are still based on a dynamic plug-in model, and the UI is built using the same toolkits and extension points. The layout and function of the workbench is under fine-grained control of the plug-in developer in this case.

When we say that the Rich Client Platform is the minimal set of plug-ins needed to build a platform application with a UI, we mean that your application need only require two plug-ins, org.eclipse.ui and org.eclipse.core.runtime, and their prerequisites.

However, rich client applications are free to use any API deemed necessary for their feature set, and can require any plug-ins above the bare minimum. Examples include the Help UI, and the Update Manager.

For more details on what is included in the Rich Client Platform, see the RCP FAQ.

<div id="casestudies"/>

Case Studies

The Eclipse community has put together a set of case studies highlighting the use of RCP technology in a variety of real-world settings. More are being added all the time so visit page from time to time to see what's new.

<div id="faq"/>

FAQs

<div id="books"/>

Books on RCP, with chapters on RCP, or otherwise relevant to RCP development

<div id="tutorials"/>

Tutorials

  • Rich Client Platform Tutorial, by Ed Burnette. Part 1 Part 2 Part 3
  • Eclipse's Rich Client Platform, by Jeff Gunther (on IBM developerWorks). Part 1, Part 2
  • Rich Client Platform deployment for multiple platforms, by Avinash Ramana[1]

<div id="articles"/>

Related Articles and Wiki pages

<div id="slides"/> <div id="presentations"/>

Presentations

  • EclipseCon 2006 - Rich Client Platform Tutorial by Jeff McAffer and Jean-Michel Lemieux (PDF)
  • Screencast: Why You Should Be Using Eclipse RCP
  • Smart Client development with the Eclipse Rich Client Platform (PDF) (PPT) by Nick Edgar and Pascal Rapicault, presented at JAOO 2005.

    The source for the accompanying "Go Wild Travel - Adventure Builder RCP Client" example is being cleaned up, and will be posted shortly.

  • Developing for the Rich Client Platform (PDF) by Nick Edgar and Pascal Rapicault, from their tutorial presented at EclipseCon, February 28, 2005.
The Hyperbola example source is available from CVS. The steps from within Eclipse are:
    1. Window > Open Perspective > Other? > CVS Repository Exploring
    2. In CVS Repositories view context menu: New > Repository Location
    3. Enter host: dev.eclipse.org repo path: /cvsroot/eclipse user: anonymous password: <none> connection type: pserver
    4. In CVS Repositories view, expand: HEAD/platform-ui-home/eclipsecon/tutorial/example1
    5. Select org.eclipsercp.hyperbola.mockup and choose Check Out
    6. Likewise, for example 2, check out both projects under example2.
The solutions to the exercises are in the Solutions branch of the Hyperbola projects. After loading from HEAD, use Compare With (or Replace With) > Another Branch or Version, press Refresh Tags, select Branches / Solutions.
  • Eclipse Rich Client Applications - Overview of the Generic Workbench (PDF) (PPT) by Nick Edgar, presented at EclipseCon, February 2004.
  • Eclipse RCP Runtime (PDF) by Jeff McAffer, presented at EclipseCon February 2004.
  • Eclipse Rich Client Platform (Zip) by Ed Burnette, presented at the RTP Websphere Users Group, August 2004.
  • The Eclipse Rich Client Platform (PPT) by various members of the Eclipse JDT and Platform teams, last updated November 5, 2004.
  • The Eclipse Rich Client Platform (HTML) by Chris Laffra, presented at the Colorado Software Summit, October 2004.

<div id="help"/>

Help Topics

The following are relevant help topics from the Platform Plug-in Developer Guide (from within the Eclipse IDE: Help > Help Contents > Platform Plug-in Developer Guide). The links below are to the online Eclipse 3.1 help.

<div id="newsgroups"/>

Newsgroups

The following eclipse newsgroups have useful discussions, questions and answers relevant to the development of RCP applications.

If you have a question, please check the RCP FAQ before posting to the newsgroups. Kindly avoid posting to the developer (*-dev) mailing lists as these are intended for use by the development teams and others participating in the development of Eclipse itself.

<div id="examples"/>

Examples

The following are some examples showing how to build applications using RCP:

<div id="applications"/>

For SWT examples, see the SWT Snippets page.

Applications

Several applications have been built using the Rich Client Platform.

<div id="other"/>

Blogs

The following are blogs with a fair bit of coverage of RCP:

Other Resources

The following are other resources describing the Eclipse Rich Client Platform, or related subjects:

Elsewhere at eclipse.org

Content is in the process of being migrated here from the old RCP Home Page.

Original Design Documents

The following are the original design documents for the RCP work done in Eclipse 3.0. They are somewhat out of date and are provided here mainly for historical interest. The tutorials and help topics above provide better materials for getting started with RCP.

Future Design Documents (works in progress)

The following design documents are proposals for potential future work. If you are interested or affected by the proposals, please update the documents.