groovy power

40
Novembro 2009 http://www.flickr.com/photos/ themaven/2793680527/ Groovy Power Diego Pacheco Arquiteto de Software p://diego-pacheco.blogspot.com p://www.twitter.com/diego_pacheco

Upload: diego-pacheco

Post on 11-Nov-2014

1.827 views

Category:

Technology


1 download

DESCRIPTION

Groovy Dynamic Language VS Java. Advantages, code, and more.

TRANSCRIPT

Page 1: Groovy Power

Novembro 2009

http://www.flickr.com/photos/themaven/2793680527/

GroovyPower

Diego PachecoArquiteto de Softwarehttp://diego-pacheco.blogspot.com

http://www.twitter.com/diego_pacheco

Page 2: Groovy Power

http://www.gettyimages.com/detail/90796442/Rubberball-Productions

#WTF

Page 3: Groovy Power

Linguagem DinâmicaConstruída em cima do JavaCom funcionalidades novas, mais legais!Suporte a DSL e criação de código muito fluenteRápido, fácil e divertido de aprenderIntegração total com Java e diversos frameworksIntegração com Spring Framework

http://www.gettyimages.com/detail/93005153/Photographers-Choice-RF

Groovy

Page 4: Groovy Power

http://www.gettyimages.com/detail/91109643/Flickr

... E Daí?

Page 5: Groovy Power

http://www.flickr.com/photos/joey7/2329913268/

Linguagens dinâmicas são brinquedos para desenvolvedores?

Page 6: Groovy Power

http://www.gettyimages.com/detail/89849377/Stockbyte

Quebrando Paradigmas

Page 7: Groovy Power

http://www.gettyimages.com/detail/92528343/Digital-Vision

Linguagens dinâmicas estão presentes no mundo real!

... Funcionam e tem vantagens!

Page 8: Groovy Power

http://www.flickr.com/photos/dcdead/3896272161/

Fatos...

A linguagem Java cada vez fica maior e mais complexaA JVM é estável e devemos usufruir dos recursos que ela proveJava não é a linguagem mais fluente e legal do mundoCada vez mais é importante ter código legível e fluenteLinguagens dinâmicas deixam você escrever o código de maneira mais sucintaGroovy é evoluído mais rápido pela comunidade do que o Java pela JCPO Spring Framework prove total integração de Beans Java e Groovy

Page 9: Groovy Power

http://www.flickr.com/photos/dcdead/3896272161/

“Type information equals type annotation? Totally untrue. As we know, type annotation is annoying. The machine should be able to figure that stuff out.”

Fatos...

Page 10: Groovy Power

http://www.flickr.com/photos/dcdead/3896272161/

Fatos...

Page 11: Groovy Power

Problemas...

http://www.flickr.com/photos/static_p/4086930642/

Complexidade RefactoringErros de tiposManter o código

Page 12: Groovy Power

Mas... Espere um pouco!

http://www.flickr.com/photos/33755703@N00/4150881619/

Page 13: Groovy Power

http://www.flickr.com/photos/visbeek/3864063759/

Penso um pouco mais...

Com testes unitários podemos resolver os problemas de refactoringErros de tipos são resolvidos pelo runtime como no PHPScala, JRuby, Groovy são diferentes de VBScriptVocê pode modificar a solução sem parar a aplicação(Não precisa compilar)O Código é mais legível e você escreve menos e faz mais!

Page 14: Groovy Power

http://www.gettyimages.com/detail/89849377/Stockbyte

Quebrando Paradigmas

Page 15: Groovy Power

http://www.flickr.com/photos/saldatoccio/2510490309/http://www.gettyimages.com/detail/91540320/Photodisc

Vamos ver um pouco de Ação?

Page 16: Groovy Power

http://www.flickr.com/photos/33755703@N00/4150881619/

Java

Groovy

VS

Page 17: Groovy Power

Round 1

Tipos de Dados

http://www.flickr.com/photos/33755703@N00/4150881619/

Page 18: Groovy Power

http://www.flickr.com/photos/8328632@N06/3366866308/

Java: Fortemente Tipada

Page 19: Groovy Power

http://www.flickr.com/photos/19173310@N07/2576586880/

Groovy: Duck Typing

Page 20: Groovy Power

Empate? Depente.

http://www.flickr.com/photos/snifsnif/72757631/

Page 21: Groovy Power

Round 2

Paradigmas

http://www.flickr.com/photos/33755703@N00/4150881619/

Page 22: Groovy Power

Java: Orientado a Objetos

http://www.flickr.com/photos/andymci/3911615780/

Page 23: Groovy Power

Groovy: Orientado a Objetos e Procedural

http://www.flickr.com/photos/anacoboy/140267971/

Page 24: Groovy Power

Vantagem do Groovy?

http://www.flickr.com/photos/kalelkoven/3317133862/

Page 25: Groovy Power

Round 3

Funcionalidades

http://www.flickr.com/photos/33755703@N00/4150881619/

Page 26: Groovy Power

http://www.flickr.com/photos/magro01/3214465219/

Java: Várias. Muitos Frameworks.

Page 27: Groovy Power

Groovy: Tudo que o Java tem e muito mais!

http://www.flickr.com/photos/pedroleao/2646597930/

Page 28: Groovy Power

Groovy: Sobrecarga de Operadores

http://www.flickr.com/photos/pedroleao/2646597930/

Page 29: Groovy Power

Groovy: Closures

http://www.flickr.com/photos/pedroleao/2646597930/

Page 30: Groovy Power

Groovy: Suporte nativo a List e Map

http://www.flickr.com/photos/pedroleao/2646597930/

Page 31: Groovy Power

Groovy: Web Services

http://www.flickr.com/photos/pedroleao/2646597930/

Page 32: Groovy Power

Groovy: Proxy

http://www.flickr.com/photos/pedroleao/2646597930/

Page 33: Groovy Power

Groovy: Simplicidade

http://www.flickr.com/photos/pedroleao/2646597930/

Page 34: Groovy Power

Groovy: Swing + HTTP

http://www.flickr.com/photos/pedroleao/2646597930/

Page 35: Groovy Power

Groovy: Meta não é beta

http://www.flickr.com/photos/pedroleao/2646597930/

Page 36: Groovy Power

http://www.gettyimages.com/detail/89849377/Stockbyte

Quebrando Paradigmas

Page 37: Groovy Power

Knock Out ?

http://www.flickr.com/photos/whitman_sllc_2009/3904849163/

Page 38: Groovy Power

Não existe bala de prata!

http://www.flickr.com/photos/finderskeeper/3219730967/

Page 39: Groovy Power

Todos podem ter o seu lugar ao solTanto Java com GroovySempre vão existir trade-offsGroovy é uma realidade e você deve considerar

http://www.flickr.com/photos/thundershead/2138023883/

Page 40: Groovy Power

Diego PachecoArquiteto de Software

Novembro 2009

http://diego-pacheco.blogspot.com

http://www.flickr.com/photos/themaven/2793680527/

GroovyPower

Obrigado!

http://www.twitter.com/diego_pacheco