miércoles, 9 de mayo de 2018

ECLIPSE



Eclipse es un entorno de desarrollo integrado, de Código abierto y Multiplataforma. Mayoritariamente se utilliza para desarrollar lo que se conoce como Aplicaciones de Cliente Enriquecido, entorno de desarrollo integrado, opuesto a las aplicaciones Cliente-liviano, entorno de desarrollo integradobasadas en navegadores. Es una potente y completa plataforma de Programación, desarrollo y compilación de elementos tan variados como sitios web, programas en C++ o aplicaciones Java. No es más que un entorno de desarrollo integrado (IDE) en el que encontrarás todas las herramientas y funciones necesarias para tu trabajo, recogidas además en una atractiva interfaz que lo hace fácil y agradable de usar.

Historia

Eclipse fue desarrollado originalmente por IBM Canada como el sucesor de su familia de herramientas para VisualAge. Actualmente es desarrollado por la Fundación Eclipse, una organización independiente sin ánimo de lucro que fomenta una comunidad de Código abierto y un conjunto de productos complementarios, capacidades y servicios. En noviembre del 2001, se formó un consorcio para el desarrollo futuro de Eclipse como Código abierto. En 2003, la fundación independiente de IBM fue creada.
Esta plataforma, típicamente ha sido usada para desarrollar entornos de desarrollo integrados (del inglés IDE), como el IDE de Java llamado Java Development Toolkit (JDT) y el compilador (ECJ) que se entrega como parte de Eclipse (y que son usados también para desarrollar el mismo Eclipse). Sin embargo, también se puede usar para otros tipos de aplicaciones cliente, como BitTorrent Azureus.
Eclipse fue liberado originalmente bajo la Common Public License, pero después fue re-licenciado bajo la Eclipse Public License. La Free Software Foundation ha dicho que ambas licencias son licencias de Software libre, pero son incompatibles con Licencia Pública General de GNU (GNU GPL).[7] Mike Milinkovich, de la fundación Eclipse comentó que el cambio a la GPL será considerado cuando la versión 3 de la GPL sea liberada.
En julio de 2008, los siguientes paquetes de lenguajes están disponibles para Eclipse 3.2.x (En orden alfabético): Alemán, Árabe, Checo, Chino Simplificado, Chino tradicional, Coreano, Español, Francés, Hungaro, Inglés, Italiano, Japonés, Polaco, Portugués (Brazil) y Ruso.

Plataforma de cliente enriquecido

La base para Eclipse es la plataforma de cliente enriquecido (del Inglés Rich Client Platform RCP). La Plataforma de Cliente enriquecido está constituida por los siguientes componente:
• Plataforma principal - inicio de Eclipse, ejecución de plugins • OSGi - una plataforma para bundling estándar. • El Standard Widget Toolkit (SWT) - Un widget toolkit portable. • Face - manejo de archivos, manejo de texto, editores de texto • El Workbench de Eclipse - vistas, editores, perspectivas, asistentes
Características de Eclipse • Dispone de un editor de texto con resaltado de sintaxis donde puedes Ver el contenido del fichero en el que estás trabajando • Contiene una lista de tareas y otros módulos similares • La compilación es en tiempo real. • Tiene pruebas unitarias con JUnit • Integración con Ant, asistentes (wizards) para creación de proyectos, clases, tests, etc., y refactorización.
Si bien las funciones de Eclipse son más bien de carácter general, las características del programa se pueden ampliar y mejorar mediante el uso de plug-ins. Asimismo, a través de estos "plugins" libremente disponibles es posible añadir un sistema de control de versiones a través de Subversion y a la vez lograr una integración mediante Hibernate.
El 28 de junio de 2005 fue liberada la versión 3.1 de Eclipse, la cual incluye mejoras en el rendimiento, el soporte de Java 5.0, mejor integración con Ant (incluido debugger) y un Sistema de Control de Versiones (CVS).
Los widgets de Eclipse están implementados por una herramienta de widget para Java llamada SWT, a diferencia de la mayoría de las aplicaciones Java, que usan las opciones estándar Abstract Window Toolkit (AWT) o Swing. La interfaz de usuario de Eclipse también tiene una capa GUI intermedia llamada JFace, la cual simplifica la construcción de aplicaciones basadas en SWT.

Ventajas de su utilización

1- El entorno de desarrollo integrado (IDE) de Eclipse emplea módulos (en inglés plug-in) para proporcionar toda su funcionalidad al frente de la Plataformade Cliente rico, a diferencia de otros entornos monolíticos donde las funcionalidades están todas incluidas, las necesite el usuario o no.
2- Este mecanismo de módulos es una plataforma ligera para componentes de software. Adicionalmente a permitirle a Eclipse extenderse usando otros lenguajes de programación como son C/C++ y Python, permite a Eclipse trabajar con lenguajes para procesado de texto como LaTeX, aplicaciones en red como Telnet y Sistema de gestión de base de datos.
3-La arquitectura plug-in permite escribir cualquier extensión deseada en el ambiente, como sería Gestión de la configuración. Se provee soporte para Java y CVS en el SDK de Eclipse. Y no tiene por qué ser usado únicamente para soportar otros Lenguajes de programación.
4- La definición que da el proyecto Eclipse acerca de su Software es: "una especie de herramienta universal - un IDE abierto y extensible para todo y nada en particular".
En cuanto a la utilización de eclipse para la creación de aplicaciones clientes se puede decir que:
1- Eclipse provee al programador con Frameworks muy ricos para el desarrollo de aplicaciones gráficas, definición y manipulación de modelos de SoftwareAplicaciones web, etc. Por ejemplo, GEF (Graphic Editing Framework - Framework para la edición gráfica) es un plug-in de Eclipse para el desarrollo de editores visuales que pueden ir desde procesadores de texto wysiwyg hasta editores de diagramas UML, interfaces gráficas para el usuario (GUI), etc. Dado que los editores realizados con GEF "viven" dentro de Eclipse, además de poder ser usados conjuntamente con otros plugins, hacen uso de su interfaz gráfica personalizable y profesional.
2- El SDK de Eclipse incluye las herramientas de desarrollo de Java, ofreciendo un IDE con un compilador de Java interno y un modelo completo de los archivos fuente de Java. Esto permite técnicas avanzadas de refactorización y análisis de código.
3- El IDE también hace uso de un espacio de trabajo, en este caso un grupo de metadata en un espacio para archivos plano, permitiendo modificaciones externas a los archivos en tanto se refresque el espacio de trabajo correspondiente.
Versiones de Eclipse
• Eclipse 3.0 2003 seleccionó las especificaciones de la plataforma OSGi como la arquitectura de tiempo de ejecución.
• En 2006 la fundación Eclipse coordinó sus 10 proyectos de código abierto, incluyendo la Platafoma 3.2, para que sean liberados el mismo día. Esta liberación simultánea fue conocida como la liberación Callisto.[5]
• La versión consecutiva a Callisto es Europa, que corresponde a la versión 3.3 de Eclipse, salió el 29 de junio del 2007.
• La versión consecutiva a Europa es Ganymede, que corresponde a la versión 3.4 de Eclipse, salió el 25 de junio del 2008. •
La versión consecutiva a Ganymede es Galileo, que corresponde a la versión 3.5 de Eclipse, salió el 24 de junio del 2009.
• Corresponde a la versión 3.6 de Eclipse y se lanzó el 23 de junio de 2010.

Datos y cifras

La versión 3.2.1 posee más de 2 millones de líneas de código (para el proyecto Eclipse). Estos datos son de acuerdo a SLOCCount. Utilizando esta cifra y aplicando el modelo COCOMO, podemos ver que requeriría un esfuerzo para producir un Software de este tamaño de 604 persona-año (para ello se ha utilizado la fórmula 2.4*(KSLOC** 1.05)).
Para tener un estimado de los costes se toma en consideración el salario de 56.286 $/año, que es el salario promedio de un programador en los Estados Unidos, y luego se multiplica ese resultado por 2,40, que incluye cualquier gasto extra diferente de los programadores como pueden ser luz, teléfono, papelería, etc. Estado actual de Eclipse Líneas de código fuente 2.063.083 Esfuerzo estimado de desarrollo (persona-año / persona-mes) 604,33 /7.251,93 Estimación de tiempo (años-meses) 6,11 / 73,27 Estimación del nº de desarrolladores en paralelo 98,98 Estimación de coste $ 81.636.459

No hay comentarios:

Publicar un comentario