|
No hay que ser muy audaz para darse cuenta que gran parte de la comunidad está poniendo todos sus esfuerzos en incorporar lenguajes de mejor productividad que Java.
En este enfoque tenemos varias opciones que no se apartan de Java (temas estratégicos, de ambiente, comunidad, popularidad, etc.). Estos lenguajes utilizan a la JVM como interprete de su bytecode generado. Los dos lenguajes más populares con este enfoque son: groovy y scala
Si bien existen otras opciones que adecuan otros lenguajes generando .class como JRuby su origen (Ruby) no tiene ese enfoque.
Este post no pretende comparar groovy y scala, simplemente la idea es introducirlos comentando mis impresiones. A mi entender este tema (lenguajes de alta productividad en Java) es uno de los puntos que debemos atacar en este 2008.
Groovy (http://groovy.codehaus.org/)
Muy popular en la Web y en Uruguay. Particularmente conozco empresas que desarrollan utilizando este lenguaje. Tuvimos una de ellas en el evento de octubre del año pasado.
El gran atractivo que encuentro en este lenguaje es la facilidad que tiene un desarrollador Java de comenzar a crear código groovy. Podemos escribir código groovy exactamente igual al código Java y a partir de que comenzamos a conocerlo utilizamos las ventajas sintácticas de este lenguaje.
Scala (http://www.scala-lang.org/)
Groovy no es la única opción de un lenguaje de gran productividad basado en Java que genera bytecode Java (*.class).
Scala es otro lenguaje con similares características. Si bien encuentro en scala un lenguaje un tanto más complejo que groovy, los pocos ejemplos que generé los hice con tiempos realmente bajos.
La sintaxis de scala es muy simple y para mi gusto más productiva que groovy (claro que depende en gran medida de mi y no es un dato para tener en cuenta).
Mirando en la Web encontré muchos lugares que analizan la performance de código groovy y scala sobre JVM. Los rendimientos (por poco) son mejores en scala que en groovy.
En posteriores post pretendo desarrollar este tema como se merece. Si hay algún interesado en trabajar este tema conmigo … bienvenido!!! Me puede enviar un mail a:
Esta dirección de correo electrónico está protegida contra los robots de spam, necesita tener Javascript activado para poder verla
|