grails, o que isso quer dizer?

25
Grails: o que isso quer dizer? Gilliard Cordeiro http://gilliard.eti.br

Upload: gilliard-cordeiro

Post on 25-May-2015

4.173 views

Category:

Documents


0 download

DESCRIPTION

O Grails é um full-stack framework, assim como o RoR, mas em vez da linguagem Ruby utiliza a linguagem Groovy, que tem a vantagem de ser totalmente compatível com a sintaxe de Java. Além disso o framework se apóia no ombro de gigantes como Spring e Hibernate, permitindo assim que você aproveite todo seu conhecimento nessa ferramentas, mas de uma forma super simplificada para facilitar sua entrada caso você não as conheça.

TRANSCRIPT

Page 1: Grails, o que isso quer dizer?

Grails: o que isso quer dizer?

Gilliard Cordeirohttp://gilliard.eti.br

Page 2: Grails, o que isso quer dizer?

Sobre mim

• Formado em análise de sistemas pela UFMS

• Trabalho há 5 anos com desenvolvimento Web

• Minha principal área de atuação é P&D

• Instrutor SENAC/MS• Um dos Coordenadores do JUGMS

Page 3: Grails, o que isso quer dizer?

Grails: o que isso que dizer?

• Quer dizer muito mais que “Groovy on Rails”

• Grails evidencia algumas coisas sobre Java:– Tendência de absorver soluções

comprovadamente boas pelo mercado– Diferenciação entre plataforma e

linguagem Java

Page 4: Grails, o que isso quer dizer?

O Java de algum tempo atrás

• JCP Muito criticado por sua lentidão em acompanhar tendências e por “inventar moda”– Um exemplo clássico é a JDO

• Especificações só se for obrigado– Ninguém queria saber de EJB antes da

versão 3 a menos que fosse uma obrigação

Page 5: Grails, o que isso quer dizer?

O Java na atualidade

• Java tem se baseado muito mais em casos de sucesso– JPA (Hibernate)–WebBeans (Seam)– Grails (RoR) *não é especificação– EJB3 (Spring provou que podia ser mais

simples que os EJBs 2.x)– JavaEE 5 e JavaEE 6: foco na

produtividade

Page 6: Grails, o que isso quer dizer?

O que é Java?

• Parece uma pergunta óbvia mas a resposta pode não ser

• Java pode ser duas coisas: linguagem ou plataforma

• A linguagem é aquela que escrevemos na nossa IDE

• A plataforma é muito mais do que isso...

Page 7: Grails, o que isso quer dizer?

A plataforma Java

• O sucesso do Java, e o fato de até hoje ele estar onde está não é pela linguagem parecida com C

• Linguagens vem e vão, mas uma plataforma como o Java vai durar por muito tempo

Page 8: Grails, o que isso quer dizer?

A plataforma Java

• O grande diferencial do Java é sua JVM

• Java possui também o maior “ecossistema” de software da atualidade

• Dá segurança para altos investimentos em ambiente corporativo por evoluir respeitando o passado

• Executa diversas linguagens

Page 9: Grails, o que isso quer dizer?

Linguagens sobre a JVM

• Originalmente a JVM era uma VM para uma linguagem: Java

• Hoje temos diversas linguagens na JVM– Groovy– Ruby– Python– Scala

Page 10: Grails, o que isso quer dizer?

Investimento em outras linguagens

• Da Vinci Machine: Um projeto que mostra que rodar outras linguagens na JVM não é brincadeira

• Instruções de bytecode feitas para serem usadas por outras linguagens, em especial as dinâmicas

Page 11: Grails, o que isso quer dizer?

E o Grails?

• O Grails, ou Groovy on Rails é um framework fortemente baseado no Ruby on Rails

• O termo “on rails” significa “nos trilhos”, e prove uma stack inteira para desenvolvimento

Page 12: Grails, o que isso quer dizer?

Composição do Grails

Page 13: Grails, o que isso quer dizer?

Grails possui diversos plugins

• No site do Grails tem uma lista com diversos plugins para:– Ajax, RichApplication• DWR, GWT, YUI, JQuery, Flex, OpenLaszlo...

– Performance– Outros frameworks– etc

Page 14: Grails, o que isso quer dizer?

Grails é Java

• Como Grails é Java, e no final temos um WAR padrão, tudo que usamos no Java podemos usar nele:– Lucene, cache de 2º nível no Hibernate

(inclusive distribuído)– JSF, Seam, Wicket (e qualquer outro

framework Java)– JBPM, JMS, Drools, etc...

Page 15: Grails, o que isso quer dizer?

Comparação com RoR

• Os dois frameworks provêem uma stack completa de desenvolvimento

• O Grails, influenciado pelo jeito de desenvolver com Hibernate é mais centrado no modelo, enquanto RoR parece mais centrado em banco de dados

Page 16: Grails, o que isso quer dizer?

Comparação com RoR

• Grails utiliza a linguagem Groovy, enquanto RoR é Ruby– Para quem veio da escola C, C++ e

Java, a sintaxe do Groovy vai parecer mais familiar

• Grails tira proveito de todo o “ecossistema” Java; escalável (*JRuby)

• Grails no entanto é bem mais jovem

Page 17: Grails, o que isso quer dizer?

Grails além dos CRUD's

• O que fazemos com Java, podemos fazer também com Grails

• Na sua aplicação real de hoje, provavelmente não tem só CRUD's

• Grails já vem com suporte à injeção de dependência e controle transacional de services do Spring

Page 18: Grails, o que isso quer dizer?

Groovy

• Linguagem de tipagem dinâmica totalmente baseada no Java

• Facilidade de meta-programação• Integração transparente com Java• Implementa diversas facilidades• Exemplo

Page 19: Grails, o que isso quer dizer?

Mão na massa

• Sistema de controle de pendências

Page 20: Grails, o que isso quer dizer?

Crescimento do Grails (update)

• Só em 2008 os downloads do Grails passaram de 7.000 para 70.000 por mês

• No dia 11/11/2008, a SpringSource adquiriu a G2One, que é a empresa que mantém o Groovy e o Grails, e além de investir no desenvolvimento dessas tecnologias, oferecerá também suporte pago à essas ferramentas, assim como a JBoss já faz com seus produtos

• No dia 10/08/2009 a VMWare adquiriu a SpringSource

• Com isso espera-se que o meio corporativo, e até a comunidade, perceba que essas são tecnologias sérias e confiáveis, fazendo o Grails crescer e melhorar cada vez mais

Page 21: Grails, o que isso quer dizer?

Recapitulando

• Diferença entre plataforma e linguagem Java

• O que é Groovy• A idéia do Grails vem do Ruby on

Rails?• Dá para usar grails em um sistema

de verdade?• Grails: o que isso quer dizer?

Page 22: Grails, o que isso quer dizer?

Perguntas?

• Você pode saber mais também aqui– http://groups.google.com/group/jug-ms– http://jugms.com.br

Page 23: Grails, o que isso quer dizer?

Obrigado

Gilliard Cordeirohttp://gilliard.eti.br

[email protected]

Page 24: Grails, o que isso quer dizer?

Referências

• Alguns links para consulta posterior– http://grails.org/– http://groovy.codehaus.org/– http://www.springframework.org/– http://www.hibernate.org/– http://www.opensymphony.com/

sitemesh/

Page 25: Grails, o que isso quer dizer?