Eclipse provides an open architecture platform for developing and integrating your own tools. That is why much of the Eclipse function set is generic in nature. The main priority for Eclipse is to provide a robust and (as far as possible) universal infrastructure for developing highly integrated tools.
You make new functions (or tools) available using the platform plug-ins technology. Plug-ins are used to enhance the platform and provide it with specific functions.
Eclipse uses the extension points concept for its enhancements. These are a set of well-defined entry points to the platform that allow the new plug-ins to use the platform functions. New plug-ins can also define their own extension points so that other plug-ins can connect to them.
The Eclipse platform itself is made up of several subsystems, which in turn are implemented in one or more plug-ins. Some basis plug-ins provide the IDE’s elementary infrastructure. Examples of such plug-ins include the Resource Management System or the Eclipse Workbench itself.
The Eclipse architecture can be portrayed in a simplified form as follows:
As well as the basis platform, the Eclipse SDK includes two standard tools, which will help you develop Java programs including plug-ins.
These two tools are implemented as plug-ins and connected to the Basis platform using extension points. The Java Development Tooling (JDT) plug-in provides the functions of a full Java IDE and allows you to edit, test, and debug Java programs.
In addition, the Plug-in Developer Environment (PDE) supplies the development environment with specific functions and utilities that support you when you develop your own platform plug-ins in the Workbench.
The components of the Eclipse Workbench that are visible to the user are presented in a single Workbench window, which offers several specific views or perspectives. After you launch the Eclipse Workbench, an initial perspective is displayed. The Resource, Java, Plug-In, and Debug perspectives are all examples of perspectives delivered as part of the Eclipse standard software.
A perspective presents a task-specific display in the Workbench and consists of the appropriate menu and application toolbars, along with a set of views and editors.
The appropriate editor for the type of file chosen is displayed in the editor area of the screen. Changes made in editors follow the normal Open-Save-Close cycle. A significant example from the Eclipse standard software is the Java Editor, which delivers a comprehensive set of user-friendly functions for creating and changing Java code – including syntax highlighting, incremental code completion, wide-ranging search functions, support for code refactoring, and automatic code updates.
Views are typically used to navigate within a hierarchy (such as the resource tree) or to support the editors – for example, by launching an editor or displaying certain properties of the object currently being edited. Any changes made in a view are saved immediately.
The SAP NetWeaver Developer Studio sits on top of this predefined Eclipse infrastructure and integrates a wider range of functions, available using the plug-ins in the existing platform. The Developer Studio implicitly includes all the standard components and features of the Eclipse Workbench. It also extends them with a range of tools and utilities, which are bundled together in the appropriate SAP perspectives for the task at hand.