AOWS

Just another adrian’s weblog

Aprendiendo Groovy && Grails

with 2 comments

Ya hacía tiempo (algo así como 3 meses) que no escribía nada; el verano, la jornada intensiva y una mudanza tienen parte de culpa🙂.

El caso es que después de hacer el examen de SCJP veo Java por todas las esquinas, así que he decidido que es hora de aprender algo nuevo. Mi primera opción siempre fue Ruby, pero tras varios intentos infructuosos he acabado dejándolo y apostando por Groovy (al menos el cambio no es tan brusco).

Ahora mismo estoy enfrascado con Grails in Action, y estoy realmente sorprendido con el lenguaje y con el framework (aunque de Grails sólo he visto un par de cosas). Basta un ejemplo para hacerse una idea:

def sortItems(items, property) {
    items.sort { a, b -> a."${property}" <=> b."${property}" }
}
class Person { String name }
people = [ new Person(name: "Adrián"), new Person(name: "Rubén"), new Person(name: "Lucas") ]
sortItems(people, "name").each { print it.name + " " }
// salida: "Adrián Lucas Rubén"

En las escasas 5 líneas de aquí arriba:

  • Se declara un método para ordenar una colección según una propiedad de los objetos. Esto mismo en Java supondría unas cuantas líneas más (clase anónima implementando Comparator, introspección…).
  • Se declara una clase Person con una única propiedad. No hay getters ni setters, se construyen automáticamente.
  • Se crea una lista con 3 personas. Todo en una sola línea, sin necesidad de crear una colección indicando su interfaz, su implementación concreta, y luego añadir de uno en uno los elementos (o crear un array para añadirlos todos).
  • Se ordena la lista anterior según el nombre de las personas, y se imprime esta propiedad.

Buena muestra del potencial del lenguaje, que no olvidemos se ejecuta sobre la JVM y se puede usar sin problemas en nuestros proyectos Java, al que por el momento sólo veo ventajas.

En definitiva, aconsejado echarle un vistazo para todos aquellos que trabajen con la plataforma Java (y sin olvidar otros lenguajes más que interesantes, como Clojure o Scala). Seguiremos informando.

Written by adrian

20 agosto, 2009 a 22:20

Publicado en Uncategorized

Tagged with ,

2 comentarios

Subscribe to comments with RSS.

  1. Hmm… es un paso… hacia el lado oscuro xD

    Andion

    21 agosto, 2009 at 12:53

  2. La verdad es que es un lenguaje muy potente. Yo lo conocí gracias a grails y al final me he quedado con ambos en los proyectos que desarrollo.

    Saludos

    Raúl Expósito

    28 diciembre, 2009 at 23:47


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: