¿Que es el hogar de mi silencio? Un lugar donde puedo gritar todo aquello que de otra forma nadie escucharía, .., al igual que no se escucha el silencio. Por lo tanto en este lugar puedo gritar todo mi silencio.

Todo el mundo que acceda a mi blog es libre de dejar comentarios acerca de lo que lea, la única condición es que no se haga de forma anónima.

martes, 24 de febrero de 2009

Algunas notas sobre frameworks

En el último proyecto en el que estoy participando, estamos desarrollando una aplicación con Struts 2.X como framework para la capa de presentación siguiendo el paradigma MVC, Spring 2.5 como framework para la capa de negocio e Hibernate 3.3 como framework para la capa de persistencia.

Spring además de ser el framework con el que desarrollaremos los objetos de la capa de negocio, actúa como elemento integrador del resto de frameworks y herramientas utilizadas (Struts, Hibernate, iReport, Log4j, ...).

Otra responsabilidad que hemos delegado en Spring es dar soporte a la capa de servicios JEE con las que tenemos que integrarnos (WebServices y JavaMail como elementos mas comunes).

Otro punto mas a destacar, la gestión de conexiones de base de datos, así como el control de las transacciones atómicas que definamos en la aplicación, recaen también en Spring. Utilizando el módulo DAO (basado en el patrón DAO) de Spring, pretendemos dividir la capa de acceso a datos en dos:
  • Una capa de abstracción encargada de la gestión de conexiones, transacciones, captura y tratamiento de excepciones de base de datos. Aquí es donde interviene el módulo DAO de Spring
  • Una capa de persistencia que será implementada por medio de Hibernate.
Por último decir, que el framework Spring es en si mismo un contenedor IOC (Inversion of Control). Dicho contenedor permite utilizar el patrón de Inyección de Dependencia, que junto con una programación orientada a interfaces, dan como resultado una aplicación de código sencillo basada en el uso de objetos POJO.

El servidor de aplicaciones sobre el que se ejecutará la aplicación es un JBoss 4.2.3GA. Los WebServices a través de la cual se facilitará la integración de otras aplicaciones con el nuevo sistema también serán desarrollados con el framework JBossWS.

El IDE de desarrollo está basado en Eclipse Ganymede (Eclipse 3.4), junto con una serie de plugins, de entre los cuales destaco los plugins del proyecto "JBoss Tools: Eclipse Plugins for JBoss technology", el cual incluye entre otros:
  • "Hibernate Tools". Plugin ideal para desarrollar con Hibernate. Destaca su consola HQL (Hibernate Query Language) que nos permite probar las consultas HQL que vayamos a programar, una potente herramienta de ingeniería inversa que permite generar los beans de nuestro modelo a partir del diseño de base de datos.
  • "JBoss AS Tools". Un buen plugin para desarrollar contra un servidor JBoss 4+.
  • "JBossWS Tools". Un componente recomendable para el desarrollo de
Estamos utilizando la versión 3.0.0.CR2 de las JBoss Tools, que aunque no es un versión estable, han demostrado suficiente madurez como para incluirlas como herramienta de referencia en el eclipse.

Bueno, si un día me volvéis a pillar con ganas, entraré mas al detalle en alguno de los muchos temas que en esta entrada han surgido.

No hay comentarios: