apresentando groovy e grails
DESCRIPTION
Apresentação realizada no Groovy and Grails Day Natal, dia 21 de setembro de 2013, no auditório da UNI-RNTRANSCRIPT
![Page 2: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/2.jpg)
2005 a 2013
2007ish a 2012
desde maio/2013
Minha (breve) timeline…
![Page 3: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/3.jpg)
Que linguagens você usa para programar?
![Page 4: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/4.jpg)
![Page 5: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/5.jpg)
Groovy é uma linguagem scripting dinâmica para a JVM, com características de Ruby, Python e Smalltalk
![Page 6: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/6.jpg)
Groovy é uma linguagem scripting dinâmica para a JVM, com características de Ruby, Python e Smalltalk
![Page 7: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/7.jpg)
Groovy é uma linguagem scripting dinâmica para a JVM, com características de Ruby, Python e Smalltalk
![Page 8: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/8.jpg)
Groovy é uma linguagem scripting dinâmica para a JVM, com características de Ruby, Python e Smalltalk
![Page 9: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/9.jpg)
O que esse código Java faz?
![Page 10: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/10.jpg)
O que esse código Groovy faz?
![Page 11: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/11.jpg)
Que coisas posso fazer com Groovy?
![Page 12: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/12.jpg)
Prototipagem de aplicações
Pequenos scripts para automação
Aplicações Web Builds com
Escrever testes com
![Page 13: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/13.jpg)
Aplicações web em tempo recorde!
![Page 14: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/14.jpg)
RÁPIDO ROBUSTO DINÂMICO
![Page 15: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/15.jpg)
RÁPIDO ROBUSTO DINÂMICO
![Page 16: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/16.jpg)
RÁPIDO ROBUSTO DINÂMICO
1. Crie seu domínio, Scaffold and Run! 2. Evolua a aplicação 3. ???? 4. PROFIT!
![Page 17: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/17.jpg)
Scripts de criação
$grails create-app
$grails create-domain-class
$grails generate-all
$grails run-app
![Page 18: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/18.jpg)
Um exemplo de domínio
![Page 19: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/19.jpg)
RÁPIDO ROBUSTO DINÂMICO
![Page 20: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/20.jpg)
RÁPIDO ROBUSTO DINÂMICO
Mixins!
![Page 21: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/21.jpg)
RÁPIDO ROBUSTO DINÂMICO
Mixins!
![Page 22: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/22.jpg)
GORM
![Page 23: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/23.jpg)
GORM
![Page 24: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/24.jpg)
RÁPIDO ROBUSTO DINÂMICO
![Page 25: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/25.jpg)
RÁPIDO ROBUSTO DINÂMICO
![Page 26: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/26.jpg)
RÁPIDO ROBUSTO DINÂMICO
![Page 27: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/27.jpg)
Estrutura de um projeto Grails
![Page 28: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/28.jpg)
Gradle
![Page 29: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/29.jpg)
Gradle
Technology Radar – Maio 2013
![Page 30: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/30.jpg)
mais de 500 plugins…
Controle de acessos
NoSQL
Data Migrations Caching
Cloud CMS
GWT
Twitter Bootstrap Spring Social
![Page 31: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/31.jpg)
E para testar minha aplicação?
![Page 32: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/32.jpg)
![Page 33: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/33.jpg)
Spock
![Page 34: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/34.jpg)
Geb
![Page 35: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/35.jpg)
Quem usa Grails em seus projetos?
![Page 36: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/36.jpg)
![Page 37: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/37.jpg)
Vale a pena investir meu tempo nisso?
![Page 38: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/38.jpg)
![Page 39: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/39.jpg)
![Page 40: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/40.jpg)
Por onde continuar?
groovy.codehaus.org grails.org
![Page 41: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/41.jpg)
![Page 42: Apresentando Groovy e Grails](https://reader034.vdocuments.site/reader034/viewer/2022051515/558c8e88d8b42a15338b458a/html5/thumbnails/42.jpg)
Imagens utilizadas
Capa http://www.flickr.com/photos/hildeengwenverbouwen/3273327176/ Question mark http://upload.wikimedia.org/wikipedia/en/4/44/Question_mark_(black_on_white).png Spock http://groovy.mn/static/D4yhWCd1kv6M6wWtHmdVd9HVBGumhq2p6aTHLng0Ggv.jpg Mixins http://farm8.staticflickr.com/7127/7016071743_0cd594079d_z.jpg Test Pyramid http://martinfowler.com/bliki/images/testPyramid/pyramid.png