Você está na página 1de 39

Grails - Desenvolvimento gil utilizado pelo ncleo de desenvolvimento

Prof. Romulo Fagundes Cantanhede romulofc@unirn.edu.br

www.webonesystem.com.br
sexta-feira, 26 de outubro de 12

Agenda
Do Java ao Groovy... Grails - Framework de desenvolvimento gil Preparao do ambiente de desenvolvimento - Indo pelo comeo Desenvolvendo uma aplicao de forma gil! Como tudo funciona, por debaixo do pano. Buscando dados de forma simples...muito simples! Alguns plugins - Facilitando a vida. Como e o que congurar. Como publicar a aplicao. At onde podemos ir? A ponta do iceberg!

sexta-feira, 26 de outubro de 12

Do Java ao Groovy...
Groovy, uma linguagem de programao alternativa ao Java.

Todo cdigo gerado passa pela mquina virtual Java, ou seja...o mesmo byte code.

Linguagem dinmica e simples! Vrios recursos adicionais.

sexta-feira, 26 de outubro de 12

Do Java ao Groovy...

sexta-feira, 26 de outubro de 12

Do Java ao Groovy...
Acessadores public, private...

sexta-feira, 26 de outubro de 12

Do Java ao Groovy...
Mtodos Acessadores

sexta-feira, 26 de outubro de 12

Do Java ao Groovy...

Mtodos Acessadores

sexta-feira, 26 de outubro de 12

Do Java ao Groovy...

Construtor Dinmico

sexta-feira, 26 de outubro de 12

Do Java ao Groovy...

http://pt.wikipedia.org/wiki/Groovy
sexta-feira, 26 de outubro de 12

Do Java ao Groovy...
Os slides anteriores so apenas um exemplo...

Indico o aprendizado do Groovy, antes do aprofundamento no Grails!

Link com tutorial: http://www.vogella.com/articles/ Groovy/article.html

sexta-feira, 26 de outubro de 12

Desenvolvimento gil
Compreende o desenvolvimento gil, toda uma metodologia de desenvolvimeto!

Quantos aqui j tentaram montar uma aplicao com os seguintes frameworks Java: JSF Spring Framework/Jboss Seam Hibernate Framework

sexta-feira, 26 de outubro de 12

Desenvolvimento gil
Como tornar o Java gil!? Por qual motivo Grails gil? Algumas premissas para o desenvolvimento gil: Automatizar funes triviais Curva de aprendizagem Entrega rpida de produtos funcionais Atendimento as expectativas de um cliente Voltado para Testes

http://manifestoagil.com.br/

sexta-feira, 26 de outubro de 12

Preparando o ambiente de desenvolvimento


O desenvolvimento do Grails, pode ser realizado por linha de comando...ou utilizando uma IDE.

Para facilitar nosso curso, vamos conhecer o STS Spring Tools Suite (trabalha em conjunto com o Eclipse).

http://www.springsource.org/sts

sexta-feira, 26 de outubro de 12

Preparando o ambiente de desenvolvimento

sexta-feira, 26 de outubro de 12

Preparando o ambiente de desenvolvimento


Antes de tudo, instale o Java JDK.

possvel, apenas realizar o download do Grails, e utiliza-lo por linha de comando.

Tambm possvel congurar o Grails atravs do STS.

sexta-feira, 26 de outubro de 12

Preparando o ambiente de desenvolvimento

sexta-feira, 26 de outubro de 12

Preparando o ambiente de desenvolvimento


Na listagem selecione: Grails* Groovy* - Aconselho para estudo Cloud Foundry Integration for Eclipse - Ser explicado...

sexta-feira, 26 de outubro de 12

Desenvolvimento gil usando Grails


possvel criar as aplicaes por linha de comando....como j dito antes (vrias vezes!), vamos nos ater a criao das aplicaes pelo STS.

sexta-feira, 26 de outubro de 12

E como tudo funciona?

sexta-feira, 26 de outubro de 12

E como tudo funciona?


O Grails utiliza um tipo de arquitetura com seus papis bem denidos, como possvel ver na tela de alguns projetos, ele visa simplicar a utilizao em camadas.

sexta-feira, 26 de outubro de 12

E como tudo funciona?


i18n Controller Controle Service Servio Domnio Domain

Visualizao View

Taglib

sexta-feira, 26 de outubro de 12

GORM - Acesso a dados de forma gil


GORM - Grails Object Relational Mapping Toda classe de domnio criada no Grails, uma entidade relacionada ao banco de dados. Nativamente, possvel utilizar mtodos criados dinamicamente. Tambm possvel realizar consultas simples...de forma MUITO simples.

sexta-feira, 26 de outubro de 12

GORM - Acesso a dados de forma gil - CRUD


Criando! Recuperando! Alterando! Removendo! Listando Todos!

http://grails.org/doc/latest/guide/GORM.html
sexta-feira, 26 de outubro de 12

GORM - Acesso a dados de forma gil - Relacionamento


Exemplo A

Exemplo B

http://grails.org/doc/latest/guide/GORM.html
sexta-feira, 26 de outubro de 12

GORM - Acesso a dados de forma gil - Busca Dinmica


Relacionamento

Ser usado esse modelo relacionado as buscas.

http://grails.org/doc/latest/guide/GORM.html
sexta-feira, 26 de outubro de 12

GORM - Acesso a dados de forma gil - Busca Dinmica


InList LessThan LessThanEquals GreaterThan GreaterThanEquals Like Ilike NotEqual Between IsNotNull IsNull Baseado em uma lista Menor que Menor igual que Maior que Maior igual que Equivalente ao Like do SQL Like no considerando Case No igual Entre valores Valor no nulo Valor vazio

http://grails.org/doc/latest/guide/GORM.html
sexta-feira, 26 de outubro de 12

GORM - Acesso a dados de forma gil - Busca Dinmica

http://grails.org/doc/latest/guide/GORM.html
sexta-feira, 26 de outubro de 12

Alguns Plugins..Praticidade!
possvel integrar vrios recursos de forma simples. Para instalar plugin, utilize o comando: grails install-plugin jquery-ui

sexta-feira, 26 de outubro de 12

Alguns Plugins..Praticidade!
JQuery UI - Recursos utilizando JQuery para melhorar aspectos grcos. Mail - Responsvel por realizar o envio de e-mail. Quartz - Utilizado para agendamento de tarefas. Spring Security - Controle de autenticao/permisso. Yui Minify - Compresso de JS e CSS. Rich UI - Recursos de melhoramento grco. Twitter BootStrap - Pode ser utilizado como template.

http://grails.org/plugins/
sexta-feira, 26 de outubro de 12

Arquivos de congurao
Pelo fato do Grails j vir previamente congurado, isso no implica dizer que no seja possvel congurar.

Existe diversos arquivos que possibilita a congurao e personalizao do Grails.

Dentre eles, a forma de acesso a dados, processo de inicializao, depedendncias, entre outros...

sexta-feira, 26 de outubro de 12

Arquivos de congurao
Para encontrar os arquivos de congurao, visualize os arquivos, que se encontram no diretrio:

sexta-feira, 26 de outubro de 12

Arquivos de congurao
Dentre os principais arquivos e suas funcionalidades temos: UrlMappings - Mapeamento das URLs para acesso. DataSource - Acesso ao banco de dados, em vrios pers: desenvolvimento, produo e testes. Cong - Conguraes gerais e criaes de variveis. BootStrap - Chamado na inicializao do sistema. ApplicationResources - Recursos do sistema, como JS e ans.

sexta-feira, 26 de outubro de 12

Arquivos de congurao
No Grails, depedendo do CRUD, no necessrio criar os formulrios e ans, relativo a parte web. Apenas denindo a linhas abaixo, no controller, automaticamente gerado todo o CRUD:

sexta-feira, 26 de outubro de 12

Arquivos de congurao
possvel modicar o CRUD gerado para as aplicaes, instalando os arquivos de referncia do Scaffold, atravs do comando e alterando os seguintes arquivos:

sexta-feira, 26 de outubro de 12

Formas de publicar a sua aplicao

sexta-feira, 26 de outubro de 12

Formas de publicar a sua aplicao


O STS, oferece recurso de comunicao com o Cloud Foundry, servio gratuito que possibilita a publicao e visualizao da ferramenta desenvolvida.

No indicada para um ambiente m, em produo. Apenas para teste de utilizao do que est sendo desenvolvido.
http://docs.cloudfoundry.com/tools/STS/conguring-STS.html
sexta-feira, 26 de outubro de 12

Formas de publicar a sua aplicao

sexta-feira, 26 de outubro de 12

At onde podemos ir...a ponta do iceberg!

sexta-feira, 26 de outubro de 12

?
sexta-feira, 26 de outubro de 12

Você também pode gostar