Grails: O Java em Alta Produtividade

919 visualizações

Publicada em

Apresentação utilizada em 27 de abril de 2013 no FLISOL-DF, que aconteceu na Faculdade IESB em Brasília-DF.

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
919
No SlideShare
0
A partir de incorporações
0
Número de incorporações
8
Ações
Compartilhamentos
0
Downloads
19
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Grails: O Java em Alta Produtividade

  1. 1. MatrizMatriz● Cleórbete Santos● Michael Schuenck dos Santos● Michael Schuenck dos Santos● Michael Schuenck dos Santos● Michael Schuenck dos Santos● Michael Schuenck dos Santos
  2. 2. FLISOL DF 201327 de abril de 201327 de abril de 2013GrailsGrailsO Java em alta produtividadeO Java em alta produtividadeCleórbete SantosCleórbete Santoscleorbete@gmail.comcleorbete@gmail.comwww.cleorbete.comwww.cleorbete.com
  3. 3. Help! I lost my mojo!Help! I lost my mojo!● Java = Customização de arquivos deconfiguração, XMLs, scripts...● E onde estará o mojo perdido?● Grails = The search is over!
  4. 4. O que é Grails?O que é Grails?● Grails é um Full Stack Framework dedesenvolvimento web que oferece asferramentas, técnicas e tecnologiaspresentes em outros frameworksJava, combinando-os com o poder e ainovação de uma linguagem dedesenvolvimento dinâmica (Groovy),e as vantagens do COC (ConventionOver Configuration);
  5. 5. O que o Grails permite?O que o Grails permite?● Principalmente que o programadorocupe-se mais na implementação doque na configuração;
  6. 6. Grails é da SpringsourceGrails é da Springsource● Springsource?● VMWare?● Groovy?● Spring Framework -> Java | Grails -> Groovy
  7. 7. O que é Groovy?O que é Groovy?● É uma linguagem OO para a plataforma Java;● É dinâmica, como Python, Ruby, Perl, e outras;● Códigos em Java são sintaticamente aceitos;● É compilada para bytecodes pela JVM;● Possui recursos como tipagem dinâmica eclosures;● É compacta em relação ao Java;
  8. 8. O que é Groovy?O que é Groovy?[continuação][continuação]● // Exemplo em Javapublic class Aluno {Integer id;String nome;public String getNome() { return this.nome; }public void setNome(String nome) {this.nome =nome;}public Integer getId() { return this.id; }public void setId(Integer id) { this.id = id; } }
  9. 9. O que é Groovy?O que é Groovy?[continuação][continuação]● // Exemplo em Groovyclass Aluno { String nome }
  10. 10. Um pouco de etimologiaUm pouco de etimologia● Significado de Grails (Groovy on Rails);● Significado de Groovy;
  11. 11. Tecnologias disponíveis emTecnologias disponíveis emGrailsGrails● Model: GORM – Grails Object RelationalMapping (Hibernate)● Controller: Spring Framework● Gant● Tomcat Embedded● View: GSPs – Groovy Server Pages● (entre outras)
  12. 12. Princípios do GrailsPrincípios do Grails● DRY – Dont Repeat Yourself (DIE – DuplicationIs Evil);● COC – Convention Over Configuration;
  13. 13. Estrutura de uma aplicação GrailsEstrutura de uma aplicação Grails● /grails-app|---/conf|---/controllers|---/domain|---/i18n|---/services|---/views|---/(...)
  14. 14. Comandos do GrailsComandos do Grails● grails help● grails create-app● grails create-controller● grails create-domain-class● grails generate-all● grails generate-controller● grails generate-views● grails run-app● grails war● (...)
  15. 15. EXEMPLO:EXEMPLO:Aplicação em GrailsAplicação em Grails
  16. 16. ScaffoldingScaffolding● Dinâmico: recurso que permite ao compiladorcriar o código para o CRUD da aplicação parauso em runtime;● Estático = CRUD em tempo de projeto;● É um termo em inglês de engenharia civil, quedenota a colocação de andaimes e outrasestruturas para suportar temporariamentetrabalhadores de maquinário enquanto aconstrução definitiva não está pronta;
  17. 17. EXEMPLO:EXEMPLO:Scaffold DinâmicoScaffold Dinâmico
  18. 18. Scaffold EstáticoScaffold Estático● grails generate-all <domain-class>
  19. 19. EXEMPLO:EXEMPLO:Scaffold EstáticoScaffold Estático
  20. 20. H2 Database EngineH2 Database Engine● Banco de dados Lightweight, Opensource,Java puro;● Suporta nativamente criptografia;● Instalado como plugin, no Grails;● Trabalha Embedded, Server e Em memória;
  21. 21. DataSource.groovyDataSource.groovy● grails-app/conf/DataSource.groovy● Environments:● Create: cria o banco se não existir, mas não omodifica caso já exista. Deleta os dados existentes;● Update: Cria o banco se não existir, e modifica-ocaso exista;● grails <env> run-app● Create-drop: apaga e (re)cria o banco. Deleta osdados existentes;
  22. 22. E o Tomcat?E o Tomcat?
  23. 23. IDEsIDEs● Eclipse e Netbeans dão suporte ao Grails;● STS – Springsource Tool Suite;● Notepad, GEdit...;● Intellij;
  24. 24. Links úteisLinks úteis● www.grails.org● www.grailsbrasil.com.br● www.groovymag.com● www.grails.org/books
  25. 25. INTERESSADOS EM CURSOS DEINTERESSADOS EM CURSOS DEGRAILS:GRAILS:cleorbete@gmail.comcleorbete@gmail.com

×