DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Grails: do Groovy à Web – Parte 5 - Java Magazine 79

Este artigo retrata a camada de visualização do Grails, cujo principal componente é a tecnologia GSP (Groovy Server Pages). Também nos aprofundaremos em assuntos como criação de bibliotecas de tags customizadas, templates, gerenciamento de layouts e Ajax.






Grails: do Groovy à Web – Parte 5
Alta produtividade no desenvolvimento de aplicações web
Conhecendo a camada de visualização e a aprimorando com o uso de templates, tags customizadas, SiteMesh e Ajax

Chegamos à última parte do minicurso sobre Grails. Após conhecermos o funcionamento dos controladores e do mecanismo de persistência (GORM), é hora de abordarmos a camada de visualização do framework, que é de vital importância, pois é a responsável pela construção da interface gráfica do nosso sistema.
Iniciaremos tratando do pilar da camada de visualização que é a tecnologia GSP. Os leitores que já desenvolveram aplicações web usando a plataforma Java EE sentirão certa familiaridade com esta tecnologia, o que é natural, visto que o GSP, por ser influenciado pelo JSP, acaba por se mostrar bastante semelhante. A diferença é que algumas das tarefas, como é normal em Grails, são bem mais fáceis de implementar, por exemplo, a criação de tags customizadas.
Finalizado este tema, trataremos de recursos que aumentam significativamente a produtividade do desenvolvedor: estamos falando da utilização de templates, criação de tags customizadas e o gerenciamento de layouts usando SiteMesh.
Outro tema que não poderia ficar de fora é o Ajax. Veremos como é fácil adotar esta técnica usando o framework sem que seja necessário escrever uma única linha Javascript para tratar das requisições ao servidor.

Na vídeo aula deste artigo, realizamos uma revisão do curso mostrando passo a passo como baixar, instalar e utilizar o Grails em questão de segundos. Em seguida, construímos um CRUD completo com validações, percorrendo grande parte das opções deste completo e poderoso framework.

Groovy Server Pages (GSP)
O principal componente por trás da camada de visualização do Grails é o Groovy Server Pages (GSP), que foi desenvolvido levando em consideração dois objetivos: ser familiar aos desenvolvedores acostumados com JSP ou ASP e, ao mesmo tempo, ser mais intuitivo e flexível que suas fontes de inspiração.
Por convenção, todos os arquivos GSP são armazenados no diretório grails-app/views da aplicação e possuem o sufixo .gsp.
Assim como uma página JSP, uma página GSP é uma mistura de três elementos:
•    Linguagem de marcação (HTML);
•    Tags customizadas;
•    Lógica de negócio (scriptlets, desta vez escritos em Groovy ao invés de Java).

Apesar de permitir a inclusão de scriptlets em seu conteúdo, esta não é uma prática recomendada pelas seguintes razões:
•    Os scripts acabam por acidentalmente incluir na camada de visualização elementos da lógica de negócio, quebrando assim o isolamento entre as camadas;
•    A camada de visualização deve ser a mais próxima possível do web designer, que nem sempre entende de programação;
•    Scriptlets tornam mais difícil a manutenção das páginas, pois aumentam a sua complexidade e dificilmente favorecem o reaproveitamento de código;
•    Na grande maioria das vezes um scriptlet pode ser substituído por uma tag customizada.

Scriptlets: Scriptlets são pequenos trechos de código inseridos na linguagem de marcação. É um recurso muito popular em PHP e ASP, tecnologias estas que exerceram forte influência na criação do JSP (e consequentemente GSP). Apesar de ser um recurso oficial, seu uso não é recomendado, pois pode acidentalmente mesclar elementos da camada de negócio com a de visualização.
Similaridades sintáticas entre GSP e JSP
Como mencionado, um dos objetivos do GSP é ser familiar a desenvolvedores acostumados a trabalhar com JSP. As similaridades expostas abaixo, no entanto, deverão ser vistas apenas como um pré-aquecimento ao nosso aprofundamento na tecnologia, pois esta apresenta alternativas bem mais interessantes.
Scriptlets
A mesma sintaxe que estamos acostumados a usar em páginas JSP pode ser aplicada no GSP. A única diferença está na linguagem usada para escrever o código fonte, Groovy ao invés de Java.
Todo bloco de código deverá estar contido entre as sequências <% e %>, como no exemplo abaixo:

<% var numero = 10 // definindo uma variável
while (numero > 0) {  %>

${numero--}


<% } %>

O código é bastante simples. Criamos uma variável chamada numero e a iniciamos com o valor 10. Em seguida definimos um loop cujo corpo é executado enquanto o valor desta variável for maior que 0. Repare que assim como no PHP e em páginas JSP, também é possível intercalar código e linguagem de marcação.
Outro ponto importante a ser observado é que, assim como no tratamento de strings do Groovy, podemos também usar a intercalação de valores, o que é justamente o que fazemos no interior do loop ao retornarmos o valor decrementado da variável numero: ${numero--}.
"


ATENÇÃO! A exibição deste artigo foi interrompida.


  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!






    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!



Publicidade
Autor
Henrique Lobo Weissmann

É consultor Groovy/Grails, fundador do Grails Brasil e sócio da itexto Desenvolvimento de Projetos, que atua na criação de projetos adotando software livre e muito Grails.


Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03