www.canoo.com 2
¿Y quién es éste tío?
๏ Desarrollador desde el inicio (1995 y contando …)
๏ Creyente fiel del Código Abierto y Libre
๏ Miembro del equipo
๏ Líder del proyecto
๏ Actualmente trabajando con
www.canoo.com 3
¿Qué son las transformaciones de AST?
๏ Básicamente se definen como manipulación de código byte en tiempo de compilación
๏ Las transformaciones de AST permite metaprogramación a nivel del compilador
๏ Existen dos tipos de transformaciones en el lenguage Groovy: globales y locales
www.canoo.com 21
@Canonical
๏ Mezcla @ToString, @EqualsAndHashCode y @TupleConstructor en un solo punto
๏ Permite configuración puntual por cada elemento
www.canoo.com 23
Y muchas otras mas …
๏ @AutoClone
๏ @AutoExternalize
๏ @ConditionalInterrupt @TimedInterrupt @ThreadInterrupt
๏ @PackageScope
๏ @WithReadLock @WithWriteLock
๏ @Field
www.canoo.com 24
Disponibles en otros proyectos
๏ . ‣ @Entity
๏ . ‣ @EventPublisher ‣ @Listener ‣ @Entity ‣ @Scaffold
๏ Modules ‣ @Scalify ‣ @Bytecode
๏ Groovy++ ‣ @Typed