Groovy para los programadores Java I

Vamos a ir viendo en varias entradas, algunos conceptos de Groovy y similitudes de éste con Java para poco a poco ir entrando en materia. Lo que primero vamos a ver como se realiza el típico Hola Mundo en Java y posteriormente como se haría en Groovy.

// Java
public class HolaMundo{

public static void main(String[] args){
for(int i = 0; i < 3; i++) {
System.out.print("Hola ");
}
System.out.println("Mundo!");
}
}


Hasta aqui, para los programadores Java no hay nada nuevo, solo habria que guardarlo en un fichero con extenxión .java y de nombre, el nombre de la clase, y solo haria falta compilarlo, sacándonos por pantalla lo siguiente:

Hola Hola Hola Mundo !!

Ahora hagamos lo siguiente: copiamos y pegamos este código en la consola de Groovy y pulsamos CTROL + R y ejecutamos el script y observamos que sale lo mismo. Hay que mentalizarse que Groovy es Java y Java es Groovy.

Tambien podriamos haberlo guardado en un fichero fuente con extension groovy y ejecutarlo con la orden groovy HolaMundo.groovy

Ahora volvamos a la consola, y vamos a convertir nuestro código anterior en mas... Groovy, primeramente algo más de teoria:

Imports por defecto:
Por defecto en Groovy tenemos a nuestra disposición, sin necesidad de importarlos, los siguientes paquetes/clases Java y paquetes Groovy:
  • java.lang
  • java.util
  • java.io
  • java.net
  • java.math.BigDecimal
  • java.math.BigInteger
  • groovy.lang
  • groovy.util
Groovy tiene la ventaja de realizar las mismas tareas con mucho menos código, ganando en efectividad veamoslo con la clase que estamos trabajando.En la consola de Groovy hacemos lo siguiente:
  • Eliminamos del codigo de la consola los puntos y coma de final de linea (;)
  • Eliminamos la definicion de clase y el método main()
Nos queda esto:

for(int i = 0; i < 3; i++)
{
System.out.print("Hola " )
}
System.out.println("Mundo!" )
Volvemos a pulsar CTROL + R para ejecutar de nuevo el script. Sale lo mismo que antes. Ahora sigamos modificando nuestro codigo. Hemos dicho que que por defecto se cargan los paquetes lang de Java por tanto nuestro código podria quedar como sigue:

for(int i = 0; i < 3; i++)
{
print("Hola " )
}
println("Mundo!" )
Ahora por último vamos a quitar los paréntesis ya vamos a sustituir la estructura repetitiva for(;;) por una equivalente de Groovy quedándonos el código como sigue a continuación:

for (i in 0..2) { print 'Hola ' }
println 'Mundo!'


Al ejecutarlo en la consola, vemos que sale el mismo resultado.

Conclusiones:
A la vista queda las mejoras de Groovy respecto a Java, pero basicamente es lo siguiente, Groovy es Java, por lo que si queremos podemos seguir usando las librerias, estructuras y código que ya teniamos diseñado con anterioridad.
Groovy genera menos código, es decir realiza lo mismo con mucho menos lineas de código y por esa razón el mantenimiento del código es mejor y con menos posibilidades de crear errores en la etapa de diseño. Y en caso de producirse errores es mas facil y rápido la resolución de los mismos.

Soporte Groovy / Grails en Netbeans 6.1

| 0 comentarios

Tenemos una muy buena noticia. En la próxima versión de Netbeans (la 6.1), ahora está en Beta, tendra soporte para Groovy y Grails. Hasta la fecha apenas habia IDES que tenian un soporte para groovy, entre ellos destacan el plugin de Intellij Groovy/Grails plug-in pero recordemos que este entorno aunque es muy bueno, es de pago.

Tambien creo recordar que en Eclipse habia algun plugin.

El resto del artículo lo podeis leer aquí:

Instalar Groovy

Para instalar Groovy, primero hemos de tener instalado una máquina virtual Java, a ser posible una 1.4.2 o superior. Es importante tener creado la variable de entorno JAVA_HOME apuntando a la instalacion del JDK. Tambien es conveniente añadir al PATH la ubicacion de la carpeta bin de la instalación del JDK.

Posteriormente nos descargamos Groovy desde su pagina, disponemos de varias distribuciones dependiendo el Sistema Operativo que tengamos. Una vez instalado, añadimos la variable de entorno GROOVY_HOME al sistema, apuntando a la instalacion de Groovy, tambien añadimos al PATH la carpeta bin de la instalación.

Para comprobar que funciona todo de manera correcta vamos a ejecutar la consola, para ello nos vamos a la carpeta bin de nuestra instalacion de Groovy y ejecutamos el fichero groovyconsole.bat el cual nos lanzara una aplicación Swing que nos servira para probar nuestros script.


De igual forma podemos crear ficheros con el codigo fuente de nuestros script y guardarlos con extension .groovy y ejecutarlos con un doble click (en windows), o tambien lanzar el comando groovy y como parametro el nombre del script que queramos ejecutar.

Teclea el siguiente código y pulsa CTROL + R

println "Hello, World!"

¿Qué es Groovy?


Groovy es en lenguaje de script, dinámico, ágil, orientado a Objetos y que se puede ejecutar en una JVM. Además es Open Source. Groovy bebe o se basa en otror lenguajes de script como el Python, Ruby o Smalltalk pero manteniendo una sintaxis basada en el Java.

Sus scripts se pueden ejecutar apartir de una JDK 1.4.2 y podemos en todo momento usar el API de Java. La especificación JSR 241 se encarga de su estandarización para una futura inclusión como componente oficial de la plataforma Java.

Groovy usa una sintaxis muy parecida a Java, comparte el mismo modelo de objetos, de hilos y de seguridad. Desde Groovy se puede acceder directamente a todas las API existentes en Java. El bytecode generado en el proceso de compilación es totalmente compatible con el generado por el lenguaje Java para la Java Virtual Machine (JVM), por tanto puede usarse directamente en cualquier aplicacion Java. Todo lo anterior unido a que la mayor parte de código escrito en Java es totalmente válido en Groovy hacen que este lenguaje sea de muy fácil adopción para programadores Java; la curva de aprendizaje se reduce mucho en comparación con otros lenguajes que generan bytecode para la JVM, tales como Jython o JRuby. Groovy puede usarse también de manera dinámica como un lenguaje de scripting.

A dia de hoy, la ultima version es la 1.5