The rich client platform (RCP) is a programmer tool that makes it easier to integrate independent software components, [1] where most of the data processing occurs on the client side. [2]
RCP is software consisting of the following components:
With an RCP, programmers can build their own applications on existing computing platforms. Instead of having to write a complete application from scratch, they can benefit from proven and tested features of the framework provided by the platform. Building on a platform facilitates faster application development and integration, while the cross-platform burden is taken on by the platform developers. The platform allows the seamless integration of independent software modules like graphic tools, spreadsheets and mapping technologies into a software application with a simple click of the mouse. [1]
Their creators claim that programs built with RCP are portable to many operating systems while being as rich as client–server applications which use traditional clients.
Open-source examples are the Eclipse , NetBeans and Spring Framework RCPs for Java.
An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, and a debugger. Some IDEs, such as IntelliJ IDEA, Eclipse and Lazarus contain the necessary compiler, interpreter or both; others, such as SharpDevelop and NetBeans, do not.
Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug-in system for customizing the environment. It is the second-most-popular IDE for Java development, and, until 2016, was the most popular. Eclipse is written mostly in Java and its primary use is for developing Java applications, but it may also be used to develop applications in other programming languages via plug-ins, including Ada, ABAP, C, C++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby, Rust, Scala, and Scheme. It can also be used to develop documents with LaTeX and packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others.
In computer programming, an application framework consists of a software framework used by software developers to implement the standard structure of application software.
The Standard Widget Toolkit (SWT) is a graphical widget toolkit for use with the Java platform. It was originally developed by Stephen Northover at IBM and is now maintained by the Eclipse Foundation in tandem with the Eclipse IDE. It is an alternative to the Abstract Window Toolkit (AWT) and Swing Java graphical user interface (GUI) toolkits provided by Sun Microsystems as part of the Java Platform, Standard Edition (J2SE).
Windows Forms (WinForms) is a free and open-source graphical (GUI) class library included as a part of Microsoft .NET, .NET Framework or Mono, providing a platform to write client applications for desktop, laptop, and tablet PCs. While it is seen as a replacement for the earlier and more complex C++ based Microsoft Foundation Class Library, it does not offer a comparable paradigm and only acts as a platform for the user interface tier in a multi-tier solution.
Hibernate ORM is an object–relational mapping tool for the Java programming language. It provides a framework for mapping an object-oriented domain model to a relational database. Hibernate handles object–relational impedance mismatch problems by replacing direct, persistent database accesses with high-level object handling functions.
The Graphical Editing Framework(GEF) is an Eclipse project that provides framework and end-user components related to graphical applications.
QF-Test from Quality First Software is a cross-platform software tool for automated testing of programs via the graphical user interface. The program is specialized on cross-browser test automation of static and dynamic web-based applications. Version 4.1 added support for MacOS and the Apple Safari and Microsoft Edge browsers via the Selenium WebDriver. RESTful web service testing. From version 5.0, Windows applications can also be tested and modern C++ applications. Version 5.3 added support for the Chrome DevTools protocol, which allows browsers to be controlled using CDP drivers.
JFire was an Enterprise Resource Planning and Customer Relationship Management system.
IBM Lotus Expeditor is a software framework by IBM's Lotus Software division for the construction, integration, and deployment of "managed client applications", which are client applications that are deployed from, configured, and managed onto a desktop, usually by a remote server. The goal is to allow developers to create applications that take advantage of running on a local client, while having the same ease of maintenance as web-based applications.
The Open Source application Bio7 is a software for ecological simulation models, image analysis and statistical analysis. Built upon the RCP framework of Eclipse it embeds several tools and programming languages for the analysis of complex ecological systems. Several Java based scripting languages and the Java language can be used from within Bio7 for the creation of simulation models and analysis tasks. In addition, Bio7 also contains a complete Graphical User Interface for the statistical R programming language and the scientific image analysis tool ImageJ with special functions to send image data from ImageJ to R or R data to ImageJ.
The KDE Gear is a set of applications and supporting libraries that are developed by the KDE community, primarily used on Linux-based operating systems but mostly multiplatform, and released on a common release schedule.
DBeaver is a SQL client software application and a database administration tool. For relational databases it uses the JDBC application programming interface (API) to interact with databases via a JDBC driver. For other databases (NoSQL) it uses proprietary database drivers. It provides an editor that supports code completion and syntax highlighting. It provides a plug-in architecture that allows users to modify much of the application's behavior to provide database-specific functionality or features that are database-independent. This is a desktop application written in Java and based on Eclipse platform.