Eclipse Rich Client Platform
What is the Rich Client Platform from Eclipse?
Up to version 2.1, Eclipse was primarily known as an Open Source development environment (IDE) for Java programmers. Eclipse users, however, quickly discovered that the IDE platform offered many functions that were needed if one wanted to develop modern client applications, which had nothing to do with IDE. Therefore, for version 3.0, the objective was to split the Eclipse framework, so that a core was created on which the existing IDE could be built as a possible type of application along with other applications. Expressed in simple terms, this core is the Rich Client Platform (RCP) of Eclipse.
Why Rich Client?
HTML-based frontends and portals are centrally administered, which minimizes the demands on maintenance and helpdesk resources. Despite these advantages and their broad use, user interface experts agree that a browser is not an ideal application frontend. It is often the case that ideas and wishes are subject to the limits set by the browser environment when the goal is to quickly visualize or validate data. For example, if you think about a modern e-mail client and an HTML-based e-mail client, the differences quickly become apparent. The gaps between the inflexible fat clients and the limited thin clients are now being filled by the following approaches:
- Whenever possible, the processing power, resources and specifics of the local terminal are used.
- Offline-online mode must be supported.
- It must be possible to automate updates and installation via the Internet or Intranet.
RCP Features in Eclipse 3.0
The Eclipse Rich Client Platform provides users with an application framework. The consistent plugin architecture in Eclipse makes efficient and object-oriented application development possible. By structuring the application in logical modules, it is possible to insert them into the client’s architecture without difficulty using plugins. This guarantees that several programmers can work in parallel without getting in each other’s way. The application can be continuously expanded over time without having to touch the existing code. If the application is expanded step by step or made available as the basis for other groups of developers, it is possible to define the extension points and thus take advantage of reusable code.
The biggest advantage of the Rich Client Platform is its flexibility and the built-in functions. Since Eclipse is very popular in the open source community, developers can find a large number of books, user groups and technical articles in the Internet.
Experience with Eclipse
As an early adapter, Inventage already saw the potential of Eclipse 2.1 for rich Java clients and applied it to Capri - The Banking CRM Platform. The removal of the IDE-specific components essentially resulted in the separation of IDE and RCP in Eclipse 3.0.
Even though the platform delivers many concepts and function to program client applications, important components are missing. For example, the communication layer between the client and server must still be defined and implemented by the developers themselves. They must also define how the data sent and received by the server is linked to the GUI elements. But this does not mean that there are no frameworks and plugins which could fill these gaps. We developed our own framework (Saros) with the help of the plugin architecture to provide a basis for enterprise applications with the Eclipse RCP.
At Inventage, we are convinced that the Eclipse Rich Client Platform is the ideal choice for client-side Java applications. Take advantage of our deep skill set and expertise in this area.
For more information about Eclipse RCP please visit Eclipse RCP.
Eclipse RCP Project References
We have realized the following projects using Eclipse RCP and Saros technologies:
Portfolio construction solution ARTE at UBS
Accounting of Hedge Funds at the SFS
PackageHandler at the Swiss Federal Archives
CRM for the HSBC Private Bank and the HSBC Guyerzeller Bank
Saros is also being used at Siemens VDO, Sobaco and the Raiffeisen Bank.