Secciones

Mis primeras impresiones en Grails.

Desde hace algunos meses llevo trabajando con el framework grails para varios proyectos en mi actual empresa y la verdad es que la experiencia está siendo muy positiva.

Grails, al igual que play framework o ruby on rails, es un framework que se basa en el paradigma "coding by convention" o "convention over configuration" y cuyo objetivo principal es mejorar la productividad de los desarrollos web.

Un buen desarrollador Java, con experiencia de al menos 5 años, puede llevar a cabo desarrollos muy productivos en Java, pero en la mayoría de ocasiones nuestros equipos no cuentan únicamente con perfiles experimentados, y hay que reconocer que la curva de aprendizaje Java en entornos empresariales es bastante larga, no sólo por el lenguaje Java en sí, que es similar a cualquier lenguaje orientado a objetos del mercado, sino porque para poder llevar a cabo desarrollos en entornos JEE es necesario conocer con suficiente profundidad al menos Spring Framework, Hibernate, Struts, JSF, Ant, Maven,...

Desde hace algunos años hay muchas voces muy respetadas en el mundo Java como Craig McClanahan o James Gosling, que están contemplando seriamente la posibilidad de buscar alternativas fuera del mundo Java.

A todos aquellos que estéis en esta situación os aconsejo echar una ojeada a esta presentación de Matt Raible en la que se hace una comparativa muy interesante de frameworks Web.
Las principales ventajas que he visto en Grails son:

- Seguir el model MVC es muy sencillo en intuitivo.
- SpringSource ofrece un entorno de desarrollo adaptado.
- Basta con una línea de comandos y un editor de texto para poder desarrollar con facilidad. En OSX, TextMate y un terminal es suficiente.
- Se pueden probar los cambios sin tener que parar y arrancar el servidor. Mi experiencia con este punto ha sido de lo más gratificante.
- No es necesario mantener infinidad de ficheros xml de configuración.
- La curva de aprendizaje es relativamente corta.
- El resultado se puede empaquetar en un war y desplegar en cualquier servidor java.
- Permite seguir utilizando nuestras librerías Java de siempre.
- Utiliza maven o apache ivy para la gestión de dependencias y ciclo de vida del desarrollo.

En próximas entradas iré explicando más cosas sobre este framework y os animo a todos a hacer vuestros primeros pinitos. Es realmente sencillo comenzar sobre todo para todos los que venimos de Java.

Aquí os dejo un pequeño screencast que demuestra lo que os digo.



Saludos,

JK

No hay comentarios:

Publicar un comentario en la entrada