18 de junio de 2009

Desarrollando con Grails

Despues de un buen tiempo le doy un poco de espacio a este blog en la web.

El objetivo de este post publicar un poco mi experiencia que tengo sobre grails aqui en este post, y espero que sirva de ayuda.

Descubri Groovy a finales del año 2006 tenia el libro "Groovy in Action", pero lo descuide por estar evocado a mi trabajo, todo el 2007 no pude ni siquiera verlo, en ese entonces llegaban noticias como Netbeans aposto por JRuby y no por Groovy o cosas asi, que parecia que el norte estaba a Ruby.

Despues en el 2008 estuve viendo un poco sobre phyton, lo cual me dejo muy satisfecho, es que era tan facil programar sobre todo los que recien empiezan en el mundo de la programacion, dicen que es bueno para juegos... por mi parte tengo que decir que no llegue a ese nivel, porque estaba metido en investigar otras herramientas (creo que en ese tiempo estuve viendo extjs e ibatis).

Casi a finales de 2008 comence a ver Grails, framework para el desarrollo web basado en Groovy, en esa epoca ya estaba trabajando con Spring, Hibernate y JSF, lo cual me fue de gran ayuda para comprender más rapido Grails.

Poco a poco comence hacer mis demos en grails, entendiendo conceptos y/o DSL como Scafolding, GORM (dicho sea de paso es espectacular), utilizando plugin que hacen todavia mas facil la tarea de solucionar problemas comunes y/o complejos.

Si quieres trabajar en Grails tienes que tener en cuenta que por ejemplo la version 1.1.* ya no soporta jdk 1.4, utiliza como minimo java5. Si es que quieres utlizar jdk 1.4 de todas maneras entonces tendrás que utilizar la version 1.0.

Soporta la gran mayoria de Base de Datos, por defecto viene embebida la HSQL, dificilmente la usaras en ambiente de producción, tambien viene un Jetty embebido; asi que desde el primer momento no necesitas ni BD ni un servidor web para correr tus demos.

Es altamente recomendable que hayas utilizado (o que sepas conceptos basicos de) Hibernate y Spring ya que grails se ha basado en estos dos frameworks y si es que no tienes conocimientos de estos framework, va hacer mas costosa la curva de aprendizaje.

Un punto importante es Groovy en el cual grails esta basado; este lenguaje te abrira la mente,te olvidaras de los ";" al final de cada sentencia, te introduciras en el mundo de los "closures", etc, etc. Groovy es un lenguaje dinamico para la JVM, por ende ya tiene solucionado problemas que Java ha solucionado, la Escalabilidad, Concurrencia, Garbage colector, Excepciones, Herencia, etc, etc; ya viene con todo eso y ademas con las bondades de un lenguaje dinamico que por ejemplo: ya no tendrás que parar tu servidor web para corregir un pedazo de codigo en tu controller.

Finalmente recomendarte (no esta demas) que antes de que inicies un proyecto para grails (y para todos tus proyectos), es muy importante que cuentes con un analisis de diseño de la aplicación.

Otra cosa que me olvidaba,es que utilizaras bastante la consola para ejecutar script Grails, porque todavia no hay un buen soporte de Grails en IDEs tales como por ejemplo Eclipse, en Netbeans he oido que tiene un mejor soporte pero para ser francos no lo he probado; lo que si he probado es el Intellij IDEA, que es un excelente ide y tiene (creo yo) el mejor soporte para Grails pero es con licencia osea hay que comprarlo.

Espero que haya sido de ayuda, si es que eres un fanatico de java por supuesto que te va ha interesar entrar en el nuevo mundo de lenguajes dinamicos que te va abrir la mente; desde luego tienes algunas otras alternativas a groovy, como por ejemplo Ruby, Phyton, Scala; pero eso ya seria otro tema.

Saludos

1 de junio de 2009

Haciendo un login en grails

En esta ocación vamos a ver como hacer un login para nuestra aplicación web, verán lo facil que es, esto se puede hacer en unos pocos minutos.