42
Apresentando GROOVY E GRAILS Ricardo Wendell [email protected] Setembro 2013

Apresentando Groovy e Grails

Embed Size (px)

DESCRIPTION

Apresentação realizada no Groovy and Grails Day Natal, dia 21 de setembro de 2013, no auditório da UNI-RN

Citation preview

Page 1: Apresentando Groovy e Grails

Apresentando GROOVY E GRAILS

Ricardo Wendell [email protected]

Setembro 2013

Page 2: Apresentando Groovy e Grails

2005 a 2013

2007ish a 2012

desde maio/2013

Minha (breve) timeline…

Page 3: Apresentando Groovy e Grails

Que linguagens você usa para programar?

Page 4: Apresentando Groovy e Grails
Page 5: Apresentando Groovy e Grails

Groovy é uma linguagem scripting dinâmica para a JVM, com características de Ruby, Python e Smalltalk

Page 6: Apresentando Groovy e Grails

Groovy é uma linguagem scripting dinâmica para a JVM, com características de Ruby, Python e Smalltalk

Page 7: Apresentando Groovy e Grails

Groovy é uma linguagem scripting dinâmica para a JVM, com características de Ruby, Python e Smalltalk

Page 8: Apresentando Groovy e Grails

Groovy é uma linguagem scripting dinâmica para a JVM, com características de Ruby, Python e Smalltalk

Page 9: Apresentando Groovy e Grails

O que esse código Java faz?

Page 10: Apresentando Groovy e Grails

O que esse código Groovy faz?

Page 11: Apresentando Groovy e Grails

Que coisas posso fazer com Groovy?

Page 12: Apresentando Groovy e Grails

Prototipagem de aplicações

Pequenos scripts para automação

Aplicações Web Builds com

Escrever testes com

Page 13: Apresentando Groovy e Grails

Aplicações web em tempo recorde!

Page 14: Apresentando Groovy e Grails

RÁPIDO ROBUSTO DINÂMICO

Page 15: Apresentando Groovy e Grails

RÁPIDO ROBUSTO DINÂMICO

Page 16: Apresentando Groovy e Grails

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

Scripts de criação

$grails create-app

$grails create-domain-class

$grails generate-all

$grails run-app

Page 18: Apresentando Groovy e Grails

Um exemplo de domínio

Page 19: Apresentando Groovy e Grails

RÁPIDO ROBUSTO DINÂMICO

Page 20: Apresentando Groovy e Grails

RÁPIDO ROBUSTO DINÂMICO

Mixins!

Page 21: Apresentando Groovy e Grails

RÁPIDO ROBUSTO DINÂMICO

Mixins!

Page 22: Apresentando Groovy e Grails

GORM

Page 23: Apresentando Groovy e Grails

GORM

Page 24: Apresentando Groovy e Grails

RÁPIDO ROBUSTO DINÂMICO

Page 25: Apresentando Groovy e Grails

RÁPIDO ROBUSTO DINÂMICO

Page 26: Apresentando Groovy e Grails

RÁPIDO ROBUSTO DINÂMICO

Page 27: Apresentando Groovy e Grails

Estrutura de um projeto Grails

Page 28: Apresentando Groovy e Grails

Gradle

Page 29: Apresentando Groovy e Grails

Gradle

Technology Radar – Maio 2013

Page 30: Apresentando Groovy e Grails

mais de 500 plugins…

Email

Controle de acessos

NoSQL

Data Migrations Caching

Cloud CMS

GWT

Twitter Bootstrap Spring Social

Page 31: Apresentando Groovy e Grails

E para testar minha aplicação?

Page 32: Apresentando Groovy e Grails
Page 33: Apresentando Groovy e Grails

Spock

Page 34: Apresentando Groovy e Grails

Geb

Page 35: Apresentando Groovy e Grails

Quem usa Grails em seus projetos?

Page 36: Apresentando Groovy e Grails
Page 37: Apresentando Groovy e Grails

Vale a pena investir meu tempo nisso?

Page 38: Apresentando Groovy e Grails
Page 39: Apresentando Groovy e Grails
Page 40: Apresentando Groovy e Grails

Por onde continuar?

groovy.codehaus.org grails.org

Page 41: Apresentando Groovy e Grails
Page 42: Apresentando Groovy e Grails

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