Chapter 9. Eclipse Rich Client Platform

In the previous chapter, we have talked about plugin development for Eclipse. We also saw that Eclipse is composed of a basic platform and plugins that provide all of the functionalities of the IDE. What we didn't tell you is that you can use this platform to build your own client applications from scratch, taking advantage of everything Eclipse offers. Imagine Eclipse without any views, perspectives, or toolbars – this is what the Rich Client Platform (RCP) provides. It is an empty canvas onto which you can develop your application using all of Eclipse's building blocks, and any other ones you might come up with.

In this chapter we will:

  • Learn what a Rich Client Platform is and how developers can benefit from building their applications using it
  • See what the Eclipse Rich Client Platform is and what it provides
  • Develop a very simple client application using Eclipse RCP to showcase how to use its most important features
  • Learn how to bundle and brand your client application

Understanding a Rich Client Platform

Before plunging into the Eclipse RCP, let's define what a Rich Client Platform is. In the context of client/server architecture, the client application is responsible for getting requests from the user and sending them to a machine that will service the requests, accessing databases and internal systems. The popularization of the Internet and improvements in speed and stability has led many companies to switch their client applications from desktop to Internet-based ones. This switch conveys a number of benefits, such as ease of deployment and updates, because any modification can be deployed to all clients by simply modifying the code of the application in the web server. Therefore, there are less hardware and software requirements for the client side, among others benefits. However, poor user experience due to network latency and downtime caused by connection issues, which even though rare, can be crucial for business, kept alive the interest in desktop-based applications.

Developing one of these client applications from scratch, however, is an expensive and time-consuming task. A number of different aspects must be thought of, such as portability, modularity, and update methods. That's where a Rich Client Platform comes in. It offers all of these features for developers to build their own client applications without having to worry about the different aspects for every type of client application they work on. Since client applications' user interfaces don't differ much from each other, most of them are basically composed of forms with data-input elements, such as text fields and combo boxes. An RCP should also provide reusable widgets that can easily be added to the applications.

Eclipse is not exactly a client application from a client/server architecture perspective. It contains all of these desirable features, and they are made available through the Eclipse RCP for developers interested in taking advantage of them for their own client applications.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset