Overview of Eclipse and the RCP
Over the past few years the Eclipse project has grown dramatically and matured into a powerful development environment. While you might traditionally think of Eclipse as an integrated development environment (IDE) for software development, the 3.0 release of Eclipse will broaden the scope of the platform's relevance in the marketplace. A little over a year ago members of the Eclipse community recognized that many elements of the Eclipse IDE could be utilized in non-IDE applications. When constructing business applications, developers could use the elegance of the plug-in architecture, the responsive, native-looking user interface, and the easy-to-use help system. By utilizing a common framework for developing business applications, developers can focus their energies on addressing the specific requirements of their application instead of wasting time reinventing a set of core components. Eclipse 3.0 milestone 5 introduced the development community to the RCP.
With the days of the browser wars behind us, many developers and users alike are frustrated with the lack of innovation and advancement of the desktop Web browser. While Web browsers enable organizations to deploy back-office applications to a large number of users, trying to provide a useable interface that supports multiple browsers on multiple operating systems burdens developers and managers. The RCP is an exciting concept that looks to address the need for a single cross-platform environment to create highly-interactive business applications.
Essentially, the RCP provides a generic Eclipse workbench that developers can extend to construct their own applications. An application consists of at least one custom plug-in and uses the same user-interface elements as the Eclipse 3.0 IDE. Before jumping into creating the plug-in, familiarize yourself with the basic elements of the Eclipse user interface, as Figure 1 shows.
Figure 1. The basic elements of the Eclipse user interface
The basic elements of the environment include:
- Workbench -- The overarching container for all windows.
- Perspective -- A visual container for all the opened views and editors.
- View -- A visual container to display resources of a particular type. Typically, a view contains a data grid or tree structure. In Figure 1, the tasks view is an example of a view that is used within the Java perspective.
- Short Cut Bar -- A set of icons that enables the user to quickly access different perspectives.
- Menu Bar -- A set of content-sensitive actions that gives the user the ability to execute some predefined function.
- Tool Bar -- A set of context-sensitive actions that enables the user to execute some predefined function. All the items found within the toolbar appear within the menu bar.
- Editor -- Editors are the primary tool users employ to display and manipulate data. In the case of the Eclipse IDE, developers use an editor to edit Java source files.



