Eclipse es una plataforma diseñada en su totalidad para construir una web integrada y herramientas para el desarrollo de aplicaciones. En cuanto a diseño, la plataforma en sí no proporciona grandes ventajas respecto a las funciones que puede realizar el usuario final. El valor de la plataforma es que estimula el desarrollo rápido de características integradas basadas en un modelo de conector.
Eclipse proporciona un modelo común de interfaz de usuario (UI) para trabajar con herramientas. Está diseñada para ejecutarse en varios sistemas operativos, a la vez que proporciona una sólida integración con cada OS subyacente. Los conectores pueden programar para las API portátiles de Eclipse y ejecutarse sin modificaciones en cualquiera de los sistemas operativos soportados.
En el núcleo de Eclipse hay una arquitectura que permite descubrimir conectores de manera dinámica. La plataforma maneja la logística del entorno básico y proporciona un modelo de navegación de usuario estándar. De esta manera, cada conector puede centrarse en la realización óptima de un pequeño número de tareas. ¿Qué tipo de tareas? Definir, probar, crear animaciones, editar, compilar, depurar, crear diagramas... el límite lo pone usted.
La plataforma Eclipse define una arquitectura abierta de manera que cada equipo de desarrollo de conectores puede centrarse en su especialidad. Los expertos en depósitos construyen los componentes de fondo; y los expertos en utilización, las herramientas de usuario final. Si la plataforma está diseñada correctamente, se pueden añadir nuevas características y niveles de integración significativos sin afectar a las demás herramientas.
La plataforma Eclipse utiliza el modelo de entorno de trabajo común para integrar las herramientas desde el punto de vista del usuario final. Las herramientas que usted desarrolla pueden conectarse en el entorno de trabajo mediante acopladores bien definidos llamados puntos de extensión.
El tiempo de ejecución de la plataforma subyacente utiliza el mismo modelo de extensión para permitir a los desarrolladores de conectores añadir soporte para tipos de archivo adicionales e instalaciones personalizadas como, por ejemplo, servidores web, servidores de grupo de trabajo y depósitos. Los componentes de cada herramienta, como archivos y otros datos, se coordinan mediante un modelo de recursos de plataforma común.
La plataforma proporciona a los usuarios un procedimiento común para trabajar con las herramientas, así como gestión integrada de los recursos que crean con los conectores.
Los desarrolladores de conectores también obtienen ventajas de esta arquitectura. La plataforma gestiona la complejidad de diferentes entornos de tiempo de ejecución, como sistemas operativos distintos o entornos de servidores de grupos de trabajo. Los desarrolladores de conectores pueden centrarse en sus tareas específicas en lugar de estar pendientes de estos aspectos de integración.
La plataforma Eclipse está estructurada en subsistemas que se implementan en uno o más conectores. Los subsistemas se construyen en la parte superior de un pequeño motor de tiempo de ejecución.
Los subsistemas definen puntos de extensión para añadir funciones a la plataforma. La tabla siguiente describe los principales componentes de tiempo de ejecución de la plataforma que se han implementado como uno o más conectores.
Tiempo de ejecución de la plataforma |
Define el punto de extensión y el modelo de conector. Descubre conectores dinámicamente y mantiene información en un registro de plataformas. Los conectores se inician cuando es necesario según la operación que efectúa el usuario en la plataforma. |
Gestión de recursos (área de trabajo) |
Define una API para crear y gestionar recursos (proyectos, archivos y carpetas) que se producen mediante herramientas y se mantienen en el sistema de archivos. |
UI de entorno de trabajo |
Implementa el centro de control del usuario para navegar por los recursos y utilizar los conectores de herramientas. Define puntos de extensión para añadir componentes de UI, como vistas o acciones de menú. Incluye kits de herramientas (JFace y SWT) para construir interfaces de usuario. |
Sistema de ayuda |
Define puntos de extensión para que los conectores puedan proporcionar ayuda u otra documentación en forma de libros por los que se puede navegar. |
Gestión de versión y configuración (VCM) |
Define un modelo de programación de equipo para gestionar y crear versiones de recursos. |
Fuera del recuadro - o fuera de la web - la plataforma básica es un entorno de desarrollo integrado (IDE) para cualquier cosa (y para nada en concreto).
Es el conector el que determina la función definitiva de la plataforma. Éste es el motivo por el que el SDK de Eclipse se suministra con conectores adicionales para mejorar la función del SDK.
Los conectores pueden soportar la edición y manipulación de tipos de recursos adicionales, como archivos Java, programas C, documentos Word, páginas HTML y archivos JSP.