Groovy es como el java del siglo XXI, es un lenguaje script basado en java que toma características de Python, Ruby, Perl y Smalltalk. La especificación JSR 241 se encarga de su estandarización para una futura inclusión como componente oficial de la plataforma Java.
Java no es el único que piede ejecutarse dentro de una JVM (máquina virtual Java). Resulta que Groovy es uno de esos lenguajes dinámicos ejecutables en una JVM, que a diferencia de los otros como lo son JRuby, Jython y Scala, posee un grado muy alto de cercanía con el lenguage Java y al mismo tiempo posee características únicas. Continúa leyendo para saber mas sobre este lenguage y lo que puede ofrecerte.
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.
Veamos unos ejemplos de la pagina oficial de groovy:
Simple "Hola mundo":
def name='World'; println "Hello $name!"
Un "hola mundo" más complicado:
import static org.apache.commons.lang.WordUtils.*
class Greeter {
Greeter(who) { name = capitalize(who) }
def salute() { println "Hello $name!" }
}
new Greeter('world').salute()
Los problemas evolucionan por lo tanto las soluciones también deben evolucionar. La evolución natural de java es Groovy!