You are on page 1of 3

Eclipse

Eclipse es un proyecto de cdigo libre que comenz siendo un IDE, de propsito


general, es decir que no se dise para ningn lenguaje especifico, los
desarrolladores deseaban hacer de eclipse ms que solo un conjunto de
herramientas, queran disear un framework que fuera modular y escalable, que
pudiera adaptarse a las necesidades de los desarrolladores. Eclipse se desarrolla
en base a un ncleo y a partir de este se va extendiendo las funcionalidades del
software, gracias a esto actualmente eclipse provee soporte para mltiples
lenguajes de programacin. Una de las caractersticas mejor diseadas de eclipse
es su arquitectura basada en plugins, es lo que le ha dado mucho xito ya que los
desarrolladores son capaces de hacer extensiones y publicarlos como cdigo
abierto o de manera comercial. Uno se los conceptos fundamentales de eclipse es
que todo es un plugin ya sea que este incluido en su plataforma o que haya sido
escrito por alguien ms.
La plataforma de eclipse fue escrita en java, y por lo tanto se necesita de la JVM
para ejecutarla, est construida de pequeas partes de cdigo llamadas plugins,
un plugin es esencialmente un archivo JAR que contiene la informacin acerca de
cmo utilizarlo, sus dependencias y como puede ser extendido, los plugins estn
escritos en java pero pueden contener otros archivos auxiliares. El mecanismo que
utiliza eclipse para que las personas puedan usar para hacer contribuciones a la
plataforma y que la plataforma los acepte, es mediante extensiones y puntos de
extensin, los plugins pueden para uso pblico o privado.
Cuando se inicia eclipse, se leen los plugins y se genera un registro de los plugins
que se tiene instalados, que se almacena en memoria, los puntos de extensin y
sus extensiones son mapeadas por nombre, se guarda un registro en el disco
duro. Todos los plugins son descubiertos al inicio pero no son activados, hasta que
el cdigo es requerido se cargan, es decir que hasta que el usuario o el software
necesitan que alguno de los plugins de eclipse sea utilizado este se carga por
completo, esto se hacer para ahorrar recursos en la JVM.
Los toolkit widget se clasifican principalmente en los que son nativos y los
emulados, los nativos utilizan recursos del sistema operativo para crear los
componentes de la interfaz, la administracin de la interaccin de los
componentes es administrada por el sistema operativo; mientras que un toolkit
widget emulado se encarga de la administracin de los eventos y de implementar
los componentes por fuera del sistema operativo. Una de las desventajas de un
toolkit nativo es que las aplicaciones estn directamente ligadas al sistema
operativo lo que da como resultado aplicaciones que no son multiplataforma o
portables; la gran ventaja de un toolkit emulado es que es muy flexible, pero
pueden llegar a ser un poco lentos.
El workbench de Eclipse est desarrollado a partir del Standard Widget Toolkit
(SWT) y JFace; SWT es un toolkit desarrollado por OTI que le dio a eclipse una
apariencia diferente, a la que daba en ese tiempo el toolkit nativo de java swing y
era capaz de funcionar en cualquier sistema de ventanas. JFace es una capa
superior a SWT la que est escrita totalmente en java y no tiene cdigo nativo de
la plataforma.
La plataforma tambin proporciona un sistema de ayuda, el cual consiste en
tpicos, cada tpico es una etiqueta o una referencia al archivo que contiene la
informacin de ayuda, la cual puede est en un archivo HTML o en XML. Los
tpicos son agrupados en tablas de contenido.
Eclipse incluye un compilador en tiempo real propio, el que toma los datos de
entrada del workspace y los compila, si hay algn cambio en el archivo, toma los
datos y los compara con los datos anteriores en busca de diferencias, recompila
los datos nuevos y los agrega a los que haba generado anteriormente, en caso de
que algn archivo sea eliminado en el workspace tambin lo borra de los archivos
compilados, en caso de que haya algn error de sintaxis lo marca en el editor para
que el programador se encargue de corregirlo.
La versin 3.0 de eclipse incorporo muchas mejoras, se cambi el sistema de
administracin de plugins por uno nuevo que tena soporte para plugins dinmicos
y tambin tena un nuevo sistema de carga de clases y tambin proporcionaba un
framework que tena soporte para modularidad. Tambin se implement una capa
de compatibilidad para plugins ya existentes, esto para no desanimar a los
desarrolladores.
Debido a que la tecnologa cambia constantemente fue necesario que el equipo de
desarrollo implementara una nueva versin de eclipse que fuera capaz de
adaptarse a las nuevas tecnologas y que a su vez fuera capaz de mantener
compatibilidad con las herramientas existentes. Se implementaron cambios en el
workbench este se genera utilizando el framework de modelamiento Eclipse. Se
implement soporte para hojas de estilo CSS, las que sirven para cambiar la
apariencia de la aplicacin. Se simplifico el API para que fuera ms fcil
implementar soluciones a los programadores.
El en proyecto de curso sera muy til implementar la capacidad de agregar
plugins a la aplicacin ya que esto permitira que se pudiera escalar la aplicacin
sin tener que alterar el cdigo fuente, solamente se tendra que dejar puntos de
acceso para que los plugins puedan ser agregados, y cada plugin se programara
para que fuera compatible con la estructura de la aplicacin, lo que permitira que
la aplicacin no se limitara a solo el manejo de los calendarios.
La estructura modular basada en complementos puede ser utilizada en
aplicaciones de tipo empresarial ya que en una aplicacin de este tipo se
necesitan se muchos mdulos, por lo que sera viable que se programara un
ncleo para la aplicacin, y sobre se ncleo se pudieran agregar los diferentes
mdulos como plugins, lo que ayudara a ser ms escalable la aplicacin y se
podran hacer modificaciones sin necesidad de alterar toda la aplicacin sino que
solo se tendra que modificar los plugins.
Eclipse es una plataforma para el desarrollo de IDEs escrita en java, cuya
estructura modular se basa en bloques llamados plugins, cada plugin aportan
funcionalidades a la aplicacin, su estructura le permite ser altamente escalable y
su API no solamente se limita al desarrollo de IDEs sino que puede ser usada en
otros proyectos, actualmente ofrece soporte para muchos lenguajes de
programacin. A lo largo de su historia ha sufrido muchos cambios pero siempre
ha tenido retro compatibilidad con sus plugins. Este proyecto tiene mucho futuro
ya que su estructura le permite adaptarse fcilmente a las nuevas tecnologas.

Nombre: Sergio Omar Ajanel Oroxom
Carn: 1534310

You might also like