msgbartop
Iä! Iä! Cthulhu Fhtagn!
msgbarbottom

13 mar 07 XDoclet: programación orientada a atributos

Desde la semana pasada, y a la espera de un importante cambio en mi vida laboral, he empezado a trabajar en un nuevo proyecto de desarrollo. En líneas generales, es muy parecido al proyecto en el que estaba trabajando hasta hace poco: una herramienta basada en servicio web para una labor administrativa. Está basada en en el framework Spring MVC, y de hacemos uso de Hibernate, que es una capa de persistencia relacional (hablando en plata, una especie de capa de abstracción para independizar la aplicación de la base de datos).

Sin embargo, en este proyecto estamos usando una tecnología que no aplicamos en el anterior proyecto, que es XDoclet. Y bien: ¿qué es XDoclet? Pues se trata de una herramienta para dotar a Java de programación orientada a atributos. ¿Ein? ¿Comorl? ¿De qué va eso? Bueno, vamos a explicarlo en plan bestia.

Cuando utilizamos Hibernate junto con Spring tenemos por un lado la definición de nuestras clases java, en una serie de ficheros .java, y por otro lado una serie de ficheros .hbm.xml que implementan la capa de persistencia relacional. Cada .java está vinculado con un .hbm.xml. Esto, en líneas generales, está bastante bien, porque reduce el acoplamiento entre capas y blablabla, pero tiene un pequeño problema: duplica el trabajo de picado de código. Y no sólo eso, sino que cada vez que se cambia una de las clases, es preciso cambiar en consecuencia su hbm, por lo que se desperdicia tiempo que podríamos estar empleando en otras tareas más preciosas, como picar la lógica, realizar pruebas, mirar las musarañas, jugar al fútbol o pasar un rato agradable con la novia.

Pues bien, es aquí donde entra en juego XDoclet. Éste nos permite automatizar el proceso de creación de los ficheros hbm, simplemente añadiendo una serie de etiquetas a nuestras clases java. Con esto lo que conseguimos tener tan sólo una clase que mantener por componente desarrollado, ya que todas las demás son generadas. Lo cual no está nada mal. Para la generación entra en juego un colega del que no había hablado hasta el momento: Maven, herramienta para la gestión de proyectos Java.

Y ya no solamente es esto, sino que además (en teoría, de momento nosotros no estamos usando esta característica) también es capaz de generar automáticamente la estructura de la capa de presentación (en nuestro caso, basada en JSP -Java Server Pages- (que, a su vez, generan los archivos HTML, XML y demás que componen el aspecto gráfico de la aplicación en sí). Una auténtica maravilla.

De momento XDoclet me está gustando mucho: automatiza bastante la creación de ficheros auxiliares y permite dedicarse a lo que de verdad (dicen) gusta a los programadores: resolver problemas.

VN:F [1.9.20_1166]
Rating: 0.0/10 (0 votes cast)
Comparte este artículo:
  • Twitter
  • Facebook
  • email
  • StumbleUpon
  • Delicious
  • Google Reader
  • LinkedIn
  • BlinkList

Deje un comentario







ocho + 9 =