[email protected]. Java Platform Principal vantagem compartilhada pelas linguagens disponíveis para...
Transcript of [email protected]. Java Platform Principal vantagem compartilhada pelas linguagens disponíveis para...
Java Platform
• Principal vantagem compartilhada pelas linguagens disponíveis para máquina virtual Java;
• Plataforma de software que funciona sobre várias plataformas de hardware
– JVM (Java Virtual Machine)
– Java API
Java Platform
Fonte: Java Tutorial
Java Platform
• Java HotSpot Virtual Machine: JIT compiler com otimização adaptativa;
• JDK x JRE;
• JSE, JEE e JME.
Groovy – conteúdo do curso
• Introdução;
• Closures;
• GString;
• POGO;
• Collections;
• Meta-programming.
Introdução
• Linguagem dinâmica para a JVM e inicialmente idealizada por James Strachan;
• Linguagens dinâmicas exibem, em tempo de execução, comportamentos que outras linguagens só exibem em tempo de compilação.
Introdução
Por que Groovy?
Porque Groovy é Java; Porque Groovy é mais do que Java.
Closures
• Pedaço de código ou ponteiro para função;
• Tipos opcionais;
• Paramêtro implícito;
• Free variables;
• Variáveis implícitas;
• Curry.
GString
GStrings correspondem a strings que contém expressões arbitrárias embutidas.
GString
POGOs
• POJO – Objeto Java Simples, subconjunto da convenção para JavaBeans;
• POGO – POJO para Groovy.
– Facilidade get/set;
– Construtor especial.
Collections
• Listas
• Ranges
• Sets
• Maps
• Expandos
Meta-programming
• GroovyObject;
• MetaClass e MetaClassRegistry;
• Invocação: ScriptByteCodeAdapter e InvokerHelper;
• GroovyInterceptable e ExpandoMetaClass.