Indo além na jvm com grails - UFOP

Post on 18-Dec-2014

106 views 2 download

description

Apresentação sobre Grails para o primeiro workshop da computação da UFOP.

Transcript of Indo além na jvm com grails - UFOP

Indo além na JVM com Grails

I workshop da computação - UFOP

•@fzampa

•fzampa@gmail.com

•Desenvolvedor / Líder Técnico

•www.eteg.com.br

•JEE

•Groovy

•Grails

•Exemplo

•JEE

•Groovy

•Grails

•Exemplo

JEE

JDK

Tomcat

Jars

XML

Configuração da IDE

Hibernate

JSF

Maven

•JEE

•Groovy

•Grails

•Exemplo

Groovy

•Dinâmica

•Linguagem Simples

•Poderosa

•Concisa

for (file in args) { new File(file).eachLine { line -> if (line =~ /palavra/) { println line } }}

int numero = 10String texto = "Número: ${numero}"println texto

Objeto meuObjeto = construirObjeto()println(meuObjeto?.propriedade?.valor)

import java.util.List;import java.util.ArrayList;

public class Seletor{private List<String> selecionaMenoresQue(List<String>

palavras, int tamanho){List<String> resultado = new

ArrayList<String>();

for (String pal : palavras){if (pal.length() <= tamanho){

resultado.add(pal);}

}return resultado;

}

public static void main(String[] args){List<String> linguagens = new

ArrayList<String>();linguagens.add("Java");linguagens.add("Scala");linguagens.add("Groovy");linguagens.add("Ruby");

Seletor seletor = new Seletor();List<String> selecionadas =

seletor.selecionaMenoresQue(linguagens,5);System.out.println("Total

"+selecionadas.size());

for (String sel : selecionadas){System.out.println(sel);

}}

}

http://www.slideshare.net/lucastex/grails-java-produtivo-e-divertido

def linguagens = ["Java", "Scala", "Groovy", "Ruby"]def selecionadas = linguagens.findAll { it.size() <= 5 }println "Total ${selecionadas.size()}"selecionadas.each { sel ->

println sel}

http://www.slideshare.net/lucastex/grails-java-produtivo-e-divertido

•JEE

•Groovy

•Grails

•Exemplo

http://grails.org/doc/latest/

Grails

Convenção sobre Configuração

Grails

Convenção sobre Configuração

Grails

Convenção sobre Configuração

Grails

Convenção sobre Configuração

Grails

Convenção sobre Configuração

Grails

Convenção sobre Configuração

Grails

Criar um projeto é fácil

Grails

Criar um crud é fácil

Grails

Criar uma consulta é fácil

Grails

Programar é prazeroso

Grails

•Pilha tecnológica bem definida

•Hibernate

•Spring

•Quartz

•JEE

•Log4J

Grails

•Roda no mesmo ambiente que aplicativos JEE

Grails

•grails createApp ufopApp

Grails

•grails createDomainClass br.ufop.Aluno

Grails

•grails generateAll br.ufop.Aluno

Grails

•grails createController br.ufop.Aluno

Grails

•grails runApp

Grails

•GORM - Grails Object Relational Mapping

class Pessoa {

static constraints = { nome(nullable: false, maxSize:30, blank: false) endereco(nullable:true) dataNascimento(nullable: false) }

String nome String endereco Date dataNascimento}

def pessoa = Pessoa.findByNome( “Felipe Zampa”)

def book = Book.findByTitle("The Stand")book = Book.findByTitleLike("Harry Pot%")book = Book.findByReleaseDateBetween(firstDate, secondDate)book = Book.findByReleaseDateGreaterThan(someDate)book = Book.findByTitleOrReleaseDateLessThan("Something", someDate)

•JEE

•Groovy

•Grails

•Exemplo

Obrigado!