JBuilder 2007 sobre Eclipse

By: Andreano Lanusse

Abstract: Lo mejor de JBuilder integrado al mundo Open Source

JBuilder 2007 no es solamente un nuevo producto con nuevos recursos, es un cambio estratégico en la forma en que vemos el mercado de herramientas Open Source. En noviembre del 2006, Borland anunció la intención de crear una subsidiaria llamada CodeGear, enfocada cien por ciento en la productividad de los desarrolladores y facilitando su trabajo; por ejemplo soportando nuevos lenguajes.

Durante todo el año, el equipo de JBuilder estuvo trabajando para cambiar las funcionalidades que no estaban presentes en la infraestructura de Eclipse, hasta la versión 2006. Cuando la herramienta estaba sobre el framework llamado Primetime.

    Primetime contra Eclipse Framework

Los desafíos comenzaron en la definición de lo que realmente es necesario cambiar; para tornar las funcionalidades compatibles e integradas con el IDE de Eclipse.

JBuilder estaba estructurado de la siguiente manera:

Hide image
Click to see full-sized image

Imagen 1. Estructura de JBuilder hasta versión 2006

Al principio el desafío era portar las funcionalidades para el framework de Eclipse. Por ejemplo: J2EE Visual Designer, integración con ALM, Virtual peer to peer, Together y otros más.

Primetime era responsable por toda la parte de las ventanas, menús, edición de código, etc.

Las otras funciones todavía deberían ser portadas. Después de los cambios, la nueva estructura de JBuilder 2007 cambió de la siguiente manera:

Hide image
Click to see full-sized image

Imagen 2: Nueva estructura de JBuilder 2007

La plataforma de Eclipse vino a ser responsable por las ventanas, menús, edición de códigos, etc.

Avanzamos con nuevos recursos y nuevas tecnologías que deben ser soportadas. Fuimos más allá e innovamos con un nuevo soporte de herramientas Open Source.

Otro objetivo era facilitar el trabajo de los usuarios de Eclipse, eliminando los problemas principales enfrentados por ellos.

Para los usuarios de JBuilder, todos los proyectos permanecen compatibles. A través de los Wizards de importación de proyectos de versiones anteriores de JBuilder, se puede hacer la migración.

    Instalación y configuración de productos Open Source.

Los usuarios de Eclipse invierten mucho tiempo en la configuración del IDE debido a la gran cantidad y diversidad de plugins utilizados; es muy común que la incompatibilidad entre versiones aumente considerablemente con el tiempo. El tiempo depende en gran medida de la configuración del IDE.

JBuilder 2007 trae lo mejor en Open Source, totalmente listo para su instalación.

El conjunto de herramientas Open Source esta compuesto por:

  • JBoss
  • QALab
  • Liferay
  • Xplanner
  • Bugzilla
  • SubVersion
  • Maven
  • JUnit
  • Apache
  • Geronimo
  • FingBugs
  • XDoclet
  • GlasFish
  • Axis
  • Continuum
  • MySql
  • Mylar

    Integraciones Open Source, Frameworks y Servidores de Aplicaciones.

No es suficiente tener un conjunto de soluciones Open Source, si éstas no están integradas entre sí o con el IDE. Por lo tanto, todas las soluciones Open Source citadas, están totalmente integradas en el IDE de JBuilder 2007.

Hide image
Click to see full-sized image

Imagen 3. Herramientas, frameworks y servidores de aplicaciones integradas

La integración con servidores de aplicación J2EE, es uno de los puentes más fuertes en JBuilder 2007 con el cual, a través del desarrollo de J2EE, se puede utilizar EJB 2.1/3.0 e integrarse a los siguientes servidores de aplicación:

  • EJB 2.1
  • Weblogic 9.1
  • WebSphere 6.0
  • JBoss 4.0.4
  • Geronimo 1.0
  • EJB 3.0
  • Glassfish
  • WebLogic EJB 3
  • JBoss 4.0.4
  • Oracle 10 rel 3

Totalmente integrado con herramientas de manejo de equipos como: Borland CaliberRM, Borland StarTeam entre otras conocidas como ALM (Application Lifecycle Management).

    Manejo de comunicación y equipos remotos.

Se invierte demasiado tiempo en la coordinación de equipos y el mantenimiento de la comunicación entre ellos. Es un desafío importante, principalmente cuando los equipos trabajan remotamente. Las soluciones ALM también pueden solucionar este tipo de problemas, además están generalmente enfocadas en grandes proyectos; soportando todo el proceso. Existen casos en que estas soluciones sobrepasan las necesidades de una Empresa. JBuilder 2007 incluye ProjectAssist y TeamInsight, que ayudarán a estas Empresas y principalmente a los desarrolladores a manejar sus proyectos con mayor efectividad.

ProjectAssist es responsable de administrar TeamInsight, a través de ProjectAssist. Toda la solución es instalada, configurada e integrada en el IDE de JBuilder con un solo click, incluyendo a TeamInsight.

A través de ProjectAssist, usted podrá trabajar en los proyectos y con los usuarios. Definiendo los niveles de seguridad para el acceso a los proyectos.

Hide image
Click to see full-sized image

Imagen 4. ProjectAssist - instalación y configuración

TeamInsight es una solución basada en herramientas OpenSource, como:

  • SubVersion à control de versión.
  • Continuum à integración de builds.
  • Bugzilla à acompañamiento de bugs.
  • Xplanner à manejo de proyectos y requerimientos.

JBuilder 2007 contiene la integración con TaskList de Eclipse, a través de Mylar; garantizando la total integración de las tareas en XPlanner y de los bugs listados en Bugzilla; permitiendo la inclusión, alteración y exclusión de los mismos. También permite trabajar offline y efectuar la sincronización posteriormente.

Hide image
Click to see full-sized image

Imagen 5. Acompañamiento de bugs a través del TaskList integrado

Además de permitir al desarrollador acompañar los bugs, proyectos y controlar versiones. Es fundamental tener una visualización gerencial de todo. TeamInsight contiene un portal que permite visualizar toda la situación del equipo.

Hide image
Click to see full-sized image

Imagen 6. TeamInsight Portal - visión centralizada de todos los datos generados por las herramientas

    Conformidad, calidad, métricas, auditoria, UML y documentación.

Definir un patrón de calidad y automatizar la verificación del código conforme a los patrones definidos es otro gran desafió. En muchos casos no sucede por falta de tiempo, y porque no tenemos cómo automatizar esta verificación. Con JBuilder 2007 es posible definir los patrones de codificación y a través de las auditorias y métricas verificar la calidad del código, y de la codificación generada por los desarrolladores. Toda la solución está basada en Together: Herramienta de Borland para UML, calidad y documentación.

Cuando se ejecuta la auditoria se podrá verificar si el código contiene errores. Esto sucede solamente cuando la aplicación es ejecutada. Con la auditoria los errores son detectados antes y durante el desarrollo.

A través de las métricas, podrá identificar si el código esta de acuerdo con los patrones del lenguaje Java y de acuerdo con las métricas definidas por usted; por ejemplo: Complejidad ciclomática, niveles de herencia, parámetros por método, líneas de código y otros más.

Hide image
Click to see full-sized image

Imagen 7. Resultado de la verificación de las métricas representado a través del gráfico de Kiviat

UML está presente en JBuilder 2007 a través de los diagramas de caso de uso, secuencia, actividad, componente, estado y distribución. Con el recurso de ingeniería reversa, cualquier código Java puede ser representado en un diagrama de clase. El diagrama de secuencia puede ser generado a partir del código y también generar el código a partir del modelo. El LiveSource es el recurso con el cual, cualquier alteración en el o del modelo se refleja en el código automáticamente y viceversa.

La documentación es generada automáticamente a partir del código y de los modelos en formatos: PDF, HTML, RTF, TXT y otros.

Together y JBuilder 2007, auxilian en la conformidad del código, documentación, calidad del código y de las aplicaciones generadas.

    Desenvolvimiento Visual de EJB y WebServices.

No tiene poco tiempo que JBuilder soporta el desarrollo de EJB y provee desarrollo visual a través de EJB Designer. El desenvolvimiento J2EE para los desarrolladores de Eclipse no es simple; además si lo utilizamos en el EJB 2.1, con EJB 3, las cosas pueden quedar más sencillas. Sin embargo, no es suficiente.

Con EJB Visual Designer, el desarrollador podrá crear modelos EJB 2.1, con el cual la generación del deployment descriptor, para los servidores soportados, será basada en la lectura del código que utiliza XDoclet para describir los atributos de los objetos.

Todo el desenvolvimiento es visual, se puede crear los Enterprise Javabeans a partir de un banco de datos o iniciar un nuevo modelo, en el que la generación del banco puede ser hecha a través del deploy en JBoss, utilizando Hibernate como mecanismo de persistencia.

Hide image
Click to see full-sized image

Imagen 8. EJB Diseño Visual.

La creación de WebServices y visualización de archivos WSDL aumentan la productividad y facilitan el desarrollo de WebServices. El WSDL Designer posibilita al desarrollador la alteración de WSDL visualmente.

Hide image
Click to see full-sized image

Imagen 9. Diseñador del WebService WSDL.

    Optimizeit

Las unidades de prueba no son suficientes para evaluar la calidad de la aplicación. Es importante otro tipo de pruebas, como caja blanca. JBuilder 2007 incluye Optimizeit como herramienta para testes de aplicación J2EE.

Con Optimizeit será posible monitorear profiler, cobertura de código, thread y a través del Request Analyzer, verificar como una aplicación de J2EE está siendo ejecutada dentro del servidor de la aplicación. Lo que permite monitorear los servicios: JDBC, JMS, JNDI, JSP, EJB, CCI y Web Services.

La imagen a continuación ejemplifica un poco de lo que podemos tener con Optimizeit. Este ejemplo, expone un consumo de memoria de la aplicación por clase, la secuencia de ejecución que generó este consumo y cuanto por ciento representa en cada punto del código. Cuando se selecciona una clase en el árbol, automáticamente se muestra el código y la respectiva línea ejecutada. Además a través de la ventana Metrics, se puede monitorear el JVM en que la aplicación está siendo ejecutada.

Hide image
Click to see full-sized image

Imagen 10. Optimizeit monitoreando una aplicación ejecutada en Tomcat 5.5

    Comparación Rational App Dev/NetBeans/JBuilder 2007

El periódico InfoWorld presento una comparación entre JBuilder 2007 y otras herramientas, para tener acceso a este review: https://www.infoworld.com/article/07/03/26/13FEjavaides_1.html

    Conclusión

JBuilder 2007 provee nuevos recursos y es un auxiliar para los usuarios de Eclipse para tener un IDE más integrado, fácil y con más productividad para su desarrollo. Además presenta a CodeGear como el primero en proporcionar una solución realmente integrada con tecnologías OpenSource y Comerciales.

Para mayor información a cerca de JBuilder, puede accesar al sitio de CodeGear: www.codegear.com y en el link https://dn.codegear.com/article/33880. Encontrará 30 videos mostrando como desarrollar aplicaciones Java en JBuilder.

Saludos.

Andreano Lanusse

Server Response from: ETNASC04