Codemotion Madrid 2016 - De Java a Groovy: ¡Hora de Aventuras!
Eleva tu capacidad con Groovy
-
Upload
domingo-suarez-torres -
Category
Technology
-
view
1.474 -
download
1
description
Transcript of Eleva tu capacidad con Groovy
Eleva tu capacidadcon Groovy
Domingo Suarez Torres
• JVM como plataforma
• Groovy
• Metaprogramación
• GDK
• Transformaciones AST
• Ecosistema Groovy
• Alternativas en la JVM
Agenda
https://github.com/synergyj/eleva-tu-capacidad-Groovy-sgce2011
http://slidesha.re/q3UUGM
Código
Presentación
@domix
#sgce2011
Acerca de...• Domingo Suárez Torres
• Estudie Ciencias de la Informática @ UPIICSA
• Fundador
• JavaUp.org, SpringHispano.org, grails.org.mx
• artesanos.de/software
• hackergarten.mx
• Creador y contribuyente de plugins de Grails
• Podcaster en ViveCodigo.org
• CTO en SynergyJ y clickOnero
Preambulo
• Primero que nada, gracias a Pedro Galvan
• En SG ’08 hable por vez primera de Groovy
• 4 años después de aprender Groovy no me arrepiento
• Hasta la fecha ha sido una de mis mejores inversiones intelectuales.
Java y la JVM como plataforma
El código Java de compila y se genera bytecode
JVM es la plataforma de ejecución que entiende bytecode
Existen muchas implementaciones de JVM. Para casi todos los sistemas operativos.
El bytecode se puede ejecutar en todas las implementaciones de la JVM
La JVM es unamaquina sofisticada
¡¡Pero se puedejugar con ella!!
Java
Groovy
Groovy 100%
DemoCompilar código Groovy a
Bytecode y usarlo desde Java
MetaProgramación
Escribir software que escriba/manipule otro
software, incluso a el mismo.http://en.wikipedia.org/wiki/Metaprogramming
DemoAgregar métodos a una clase de la librería estándar de Java
Técnicas
• ExpandoMetaclass
• Categorias
• Mixins
ASTAbstract Syntax Tree
Es la representación en forma de árbol de la estructura sintáctica
abstracta de un lenguaje de programación
http://en.wikipedia.org/wiki/Abstract_syntax_tree
Muy útil para agregar información a los nodos
Se puede usar en Groovy para hacer Metaprogramación
en tiempo de compilación
DemoUsar anotaciones AST
Creciendo el número de transformaciones.
Tu puedes crear las propias.
Ecosistema Groovy
¿no te gusto Groovy?
La plataformaJVM
Créditos fotos• http://flic.kr/p/4dXpDi
• http://flic.kr/p/7BxSNS
• http://flic.kr/p/9ddJ8p
• http://flic.kr/p/58VCAi
• http://flic.kr/p/58ZNKL
• http://flic.kr/p/5NsmsK
• http://flic.kr/p/9EeKer
• http://flic.kr/p/MqxS3
Domingo Suarez Torres