El fin de semana estuve haciendo unas pruebas para ver que tecnología usare para un nuevo proyecto, sin alejarme mucho de lo que ya manejo habitualmente que es: spring, hibernate, forza.
Decidí probar un poco con gorm (Grails Object Relational Mapping) unos de los principales componentes de grails, groovy, el lenguaje que usa grails y spring mvc. Por que no hacer toda la aplicación en grails? pues la idea es aumentar la productividad poco a poco, teniendo el mayor control posible sobre la aplicación, a que me refiero?, bueno, ya usando hibernate a veces hay cosas que parecen magia, pero a veces la magia falla, entonces tienes que leer, analizar, debugear y entender un poco el como esta hecha esa magia, asi que empezamos poco a poco a entender la magia de grails.
Empece por ver la aplicación de ejemplo que viene cuando bajas grails, samples/petstore-mvc, y se ve muy sencillo, se simplifica mucho el acceso a datos, algo que no debería ser la gran ciencia. La aplicación viene por default configurada para hacer uso de una base de datos en memoria, entonces la configuro para que apunte a un servidor postgresql local, y para mi sorpresa deja de funcionar, raro, no ejecuta los inserts/updates pero si los selects, bueno para no hacerla larga, resulta ser que es el manejo de transacciones.
Que sigue?, sustituyo gorm por el EntityManager de forza, el cual es un «Dao» genérico para simplificar el acceso a datos, junto con otras utilerias. Esto porque tengo ya varios años usando forza, y dado que vamos poco a poco con la nueva tecnologia, dejaremos a gorm para despues.
Groovy? me pareció muy productivo, bastante simple, puedes usar clases de java en groovy y viceversa, de esa manera puedes ir tomando poco a poco lo que te sirve mas de groovy.
Entonces la arquitectura de la aplicacion queda: Capa de acceso a datos con forza/hibernate con clases en groovy, capa de servicios en groovy, controllers en groovy con spring mvc, y jsp para las vistas.
En otro post esta semana voy a detallar la arquitectura de la aplicación y mostrar algunos ejemplos en codigo.
Espero sus comentarios y experiencias, saludos…
A veces la magia falla!
Esa es la frase con la que me voy a quedar del articulo! Ahi es cuando le hablas a Gandalf o de Joido a Beto el Boticario, para que te enseñe unos trucazos de magazo!
Iaax Page