introdução ao framework grails slide

Post on 14-Jul-2015

1.184 Views

Category:

Technology

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Introdução ao

Framework Grails

Adriano Basto Antunes

Tópicos

Contexto Histórico Breve Histórico

Surgimento do Grails

Surge o Grails O que é? Criadores e

Comunidade

Groovy Comparação com Java.

Closures

Grails

Estudo de Caso Problema

Desenvolvendo c/ Scrum

Product Backlog

Sprint Backlog

Digrama de Classe

O Sistema

Camada de Modelo

Camada de Controle

Camada de Visualização

Testes

Persistência de Dados

Plugins

Implantação

Breve Histórico

Evolução ambiente computacional

Desenvolvimento ágil

Frameworks

Surgimento do Grails

Java vs Ruby on RailsVantagens

Vantagens do RoR sobre o Java

Vantagens do Java sobre o RoR

Soluções

Implantar Ruby/Python em Java

Criar nova ferramenta escrita em Groovy e

baseada no RoR

Surge o Grails

O que é?

Criadores

Comunidade

Groovy

O que é?

Principais Vantagens.

Closure

Variáveis

Bloco de códigos executaveis em lugar de

um único valor

Conceito antigo reutilizado ao máximo

pelo Groovy

Exemplo de ClosureDeclaração

def save = {

def usuarioInstance = new Usuario(params)

if (usuarioInstance.save(flush: true)) {

redirect(action: "show", id: usuarioInstance.id)

}

else {

render(view:"create", model:[usuarioInstance:

usuarioInstance])

}

}

Referência/Execução

def aba = new Usuario(nome:"Adriano Basto", login:"aba",

senha:"123456")

aba.save()

Grails

Criando Uma aplicação Grails

IDEs

NetBeans, Eclipse

Linha de Comando

Estudo de Caso

Problema

Solução em Grails

Desenvolvendo com Scrum

Product Backlog

IDNOME DA ESTÓRIA IMP EST COMO DEMONSTRAR

1CADASTRO DE

CLIENTES10 1

Usuário faz login, clica em clientes, na página

clientes seleciona "criar novo", insere os dados e clica em

salvar.

2CADASTRO DE

FUNCIONÁRIOS5 3

Usuário faz login, clica em funcionários, e se for

autorizado de acordo com seu papel na aplicação vai a

pagina funcionários seleciona "criar novo", insere os dados e

clica em salvar.

7 CONTROLE DE VENDAS 10 8Possuirá dependência direta do controle de estoque e

de caixa.

8CONTROLE DE VENDAS

A PRAZO10 2

Se a forma de venda for a prazo, clica-se em Venda a

prazo, clica em "Criar nova", seleciona cliente por código e

nome, insere dados da venda e salva.

9 CONTROLE DE CAIXA 8 10Depende do controle de vendas, serviços, compras,

despesas

15 REALIZAR VENDA 10 10Clica em realizar venda na sessão venda, insere os

dados da venda e imprime cupom fiscal

16CONSULTAR VENDAS A

PRAZO10 2

Digita um dado sobre a venda no campo buscar da

sessão vendas a prazo e clica em buscar

Sprint Backlog

IDNOME DA ESTÓRIA IMP EST COMO DEMONSTRAR

1 CADASTRO DE CLIENTES 10 1

Usuário loga-se, clica em clientes, na página

clientes seleciona "criar novo", insere os dados e clica

em salvar.

2CONTROLE DE VENDAS A

PRAZO10 2

Se a forma de venda for a prazo, clica-se em

Venda a prazo, clica em "Criar nova", seleciona cliente

por código e nome, insere dados da venda e salva.

3CONSULTAR VENDAS A

PRAZO10 2

Digita um dado sobre a venda no campo buscar

da sessão vendas a prazo e clica em buscar

4 CONSULTAR CLIENTES 10 3Digita um dado sobre o cliente no campo

buscar da sessão clientes e clica em buscar

5 LISTAR CLIENTES 10 1Clica em cliente e uma lista de clientes

cadastrados é exibida

6 LISTAR VENDAS A PRAZO 10 2Clica em vendas a prazo e uma lista de vendas é

exibida

Diagramas de Classes

Estrutura de Diretóriosgrails-app

conf

controllers

domain

i18n

services

taglib

views lib

src

utils

test

Web-app

Camada de Modelo

Constraints (Validações)

Herança

Relacionamento

Classe de DomínioHerança

Constraints (Validações)

Relacionamento

Camada de Controle

Scaffold

Quando usar? Como usar?

Action Segurança

Acesso e Autenticação de Usuários

Filtros

Administração do Sistema

Classes Utilitárias

Codificação de Senhas

Classe de Controle

Closure

No controller

chamada action

Camada de Visualização

GSP – Groovy Server Pages

SiteMesh

Bibliotecas de Marcas (TagLibs)

Templates e Layout

Arquivo GSP

Testando a aplicação

TDD

Testes Unitários

Hierarquia de teste em Grails

Persistência de Dados da

Aplicação

DataSource.groovy

Dbcreate

Enviroments

HSQLDB

MySql

GORM e Hibernate

Persistência de Dados

Expandindo a aplicação

Plugins

Spring

O Plugin Searchale (busca rápida)

Implementação da Aplicação

Deploy

Tomcat

War

Árvore de

diretórios war

Conclusão

Grails caracteriza-se por fim como:

Recurso Aliado ao Java

Implementar Desenvolvimento ágil

Gerar soluções rápidas e eficientes

MUITO OBRIGADO!

top related