novidades groovy 2.0

Download Novidades Groovy 2.0

Post on 11-Jun-2015

1.469 views

Category:

Technology

0 download

Embed Size (px)

DESCRIPTION

Apresentação que fiz para a equipe Bluesoft sobre as novidades do Grovvy 2.0

TRANSCRIPT

  • 1. Novidades do Groovy 2.0por Ismael Soares @ismaelsoareszsbado, 8 de setembro de 12

2. RefernciaEsta um resumo escrito porpublicado naGuillaume Laforgesbado, 8 de setembro de 12 3. FuncionalidadesEstticasVerificao esttica de tiposCompilao estticasbado, 8 de setembro de 12 4. Outras melhoriasrelacionadas a JDK 7Melhorias de sintaxeSuporte a instruo da JVMsbado, 8 de setembro de 12 5. =sbado, 8 de setembro de 12 6. Por que?Java em linguagem dinmicaMenos cdigo repetitivoFacilmente integrvel ao Javasbado, 8 de setembro de 12 7. Melhoriassbado, 8 de setembro de 12 8. @TypeChecked -> Pode ser utilizado na classe ou em apenas alguns mtodos especficos -> Caso opte por utilizar na classe e queira colocar um mtodo como exceo basta passar o parmetro (SKIP) -> O Groovy utiliza um mecanismos de transformao AST (rvore de Sintaxe Abstrata)sbado, 8 de setembro de 12 9. Identificao deerros de validao http://www.infoq.com/br/articles/new-groovy-20 (Guillaume Laforge)sbado, 8 de setembro de 12 10. Checagem de valoresretornados http://www.infoq.com/br/articles/new-groovy-20 (Guillaume Laforge)sbado, 8 de setembro de 12 11. Converso comum de tiposInferncia de tipossbado, 8 de setembro de 12 12. Caractersticas dinmica emtodos de tipagem estticaMarkup Builder umcriador de XML doGrov vysbado, 8 de setembro de 12 13. Mais um pouco de infernciade tipos...sbado, 8 de setembro de 12 14. Lowest Upper Bound(Mnimo Limite superior)Que loco!sbado, 8 de setembro de 12 15. Fluxo de Tipagemsbado, 8 de setembro de 12 16. Fluxo de Tipagem Inteiro no temUpperCase Z!sbado, 8 de setembro de 12 17. Um pouco mais de fluxo de Tipagem...sbado, 8 de setembro de 12 18. Um pouco mais de fluxo de Tipagem... Voc alterou a Varivel. Agora me perdi!sbado, 8 de setembro de 12 19. @CompileStaticsbado, 8 de setembro de 12 20. Compilao estticaMelhora na performanceBytecode igual ao gerado no javacsbado, 8 de setembro de 12 21. JDK 7sbado, 8 de setembro de 12 22. Literais binriassbado, 8 de setembro de 12 23. Uso underline em nmerossbado, 8 de setembro de 12 24. Mltiplos blocos de catchsbado, 8 de setembro de 12 25. Suporte a Invoke DynamicNova instruo de bytecodeAuxiliar desenvolvimento de linguagens dinmicassobre JVMChamadas de mtodos dinmicas podem sercolocadas em cacheO Groovy tem implementaes prprias otimizadaspara acelerar a invocao dinmicasbado, 8 de setembro de 12 26. Groovy Modularsbado, 8 de setembro de 12 27. O Groovy no apenas umalinguagem!Ant: para scripts do Ant, automatizando tarefas administrativas; BSF: para integrao do Groovy em aplicaes Java com o velho Apache BeanScripting Framework; Console: mdulo contendo o console do Groovy Swing; GroovyDoc: para documentar suas classes Groovy e Java; Groovysh: mdulo correspondente ao terminal de linha de comando Groovysh; JMX: para expor e consumir beans JMX; JSON: para produzir e consumir informaes no formato JSON; JSR-223: para integrar o Groovy s aplicaes Java atravs da API javax.scriptingdo JDK 6 ou superior; Servlet: para escrever e disponibilizar templates e scripts de servlets do Groovy; SQL: para consultar bases relacionais; Swing: para construo de interfaces grficas usando o Swing; Templates: para uso do mecanismo de templates; Test: para suporte a testes, como o GroovyTestCase, mocking e mais; TestNG: para escrever testes usando o TesteNG no Groovy; XML: para produzir e consumir documentos em XML.sbado, 8 de setembro de 12 28. Mdulos de extensoComo o Groovy foi dividido em mdulos menores, foicriado um mecanismo para que mdulos possamcontribuir com mtodos de extenso. Dessa forma, essesmdulos podem fornecer mtodos de instncia emtodos estticos para outras classes, incluindoclasses do JDK e de bibliotecas de terceiros.sbado, 8 de setembro de 12 29. Que loco!sbado, 8 de setembro de 12 30. Decorando commtodos estticossbado, 8 de setembro de 12 31. Configurao mdulo de extenso-> Criar arquivo no META-INF/servicesorg.codehaus.groovy.runtime.ExtensionModulesbado, 8 de setembro de 12 32. ?sbado, 8 de setembro de 12 33. Obrigadosbado, 8 de setembro de 12