Por que eu devo ler este artigo:Neste artigo apresentaremos os recursos do simples e prático Play Framework. Para isso, demonstraremos na prática a criação de um chat, e como um importante complemento, utilizaremos conjuntamente as soluções do protocolo WebSocket para realizar a comunicação em tempo real entre a aplicação e o servidor.

Atualmente, obter informações precisas e em um curto espaço de tempo se tornou indispensável para que pequenas e grandes corporações sobrevivam e se mantenham atualizadas em relação à forte concorrência do mercado.

Com isso, a tecnologia tem se tornado cada vez mais presente nas empresas, trazendo inovações que possibilitam suprir tal necessidade. Neste contexto, entre as inovações mais recentes e de grande destaque se encontra a tecnologia WebSocket.

WebSocket é um recurso que permite a comunicação em tempo real entre cliente e servidor através de uma única conexão TCP. A conexão é mantida durante todo o tempo e ambos podem se comunicar quantas vezes for necessário, não necessitando de solicitações adicionais (os famosos requests), resultando assim em ganho de performance para a aplicação.

Geralmente esta solução é adotada em aplicações que requerem troca de informações e atualizações em tempo real, como é o caso de uma transmissão online, que ao inserir uma nova postagem precisa que esta seja notificada a todos instantaneamente, sem precisar que cada um dos clientes solicite esta atualização.

Como as corporações possuem a necessidade de obter soluções ágeis e com bom desempenho, os desenvolvedores também possuem a uma importante necessidade: dispor de boas soluções que permitam desenvolver projetos com praticidade e produtividade. Neste contexto surge o Play Framework, outra tecnologia que iremos abordar no decorrer do artigo.

O Play! vem chamando a atenção dos desenvolvedores justamente por facilitar o desenvolvimento de aplicações web em Java, não necessitando de muitas ferramentas e configurações complexas para a implementação da solução, nem mesmo sendo necessária a utilização de uma IDE.

Além disso, o Play consome recursos mínimos de hardware, possibilitando assim seu uso em equipamentos inferiores. Dentre as diversas vantagens de se utilizar este framework, podemos destacar:

· A facilidade na detecção e resolução de erros durante o processo de desenvolvimento;

· A possibilidade de utilização de qualquer biblioteca Java;

· O uso da arquitetura MVC/RESTful.

Sendo assim, com o intuito de demonstrar a praticidade de se desenvolver com os recursos fornecidos pelo Play!, e também visando de abordar um exemplo onde possamos fazer uso de WebSockets, desenvolveremos no decorrer deste artigo um chat.

Play Framework

O Play! é um framework open source utilizado para o desenvolvimento de aplicações Java e Scala. O seu objetivo é facilitar a implementação de soluções web visando a produtividade, para que todo processo seja ágil e o menos desgastante possível.

Como grande vantagem está o fato de trabalhar com o processo de Hot Deployment, que possibilita ao desenvolvedor visualizar as alterações sem a necessidade de recompilar o projeto manualmente.

Com Hot Deployment, o tempo gasto para recompilar o projeto e executá-lo novamente se resume apenas a um simples refresh na página. Outra característica fornecida por este framework é a possibilidade de se trabalhar com o sistema de rotas, que simplifica o mapeamento entre URLs e os controladores da aplicação.

O que é WebSocket?

Normalmente, quando uma aplicação web é acessada por um browser, uma solicitação HTTP é enviada para o servidor web responsável por hospedar a página. Em seguida, o servidor web analisa o pedido e envia a resposta.

Em alguns casos, o tempo de resposta é excedido devido à grande quantidade de informações a serem processadas, causando lentidão e transtornos (ver Figura 1).

O objetivo do WebSocket é viabilizar a comunicação assíncrona entre servidores e aplicações web que necessitam de informações em tempo real, como sites de previsões do tempo, sites de ações e investimentos, jogos online, etc.

Com o uso desta solução a comunicação se torna mais prática e com menores chances de causar lentidão, pois é utilizado um canal de comunicação bidirecional entre navegador e servidor, e então ambos podem enviar e receber diversas mensagens entre eles sem ter a necessida ...

Quer ler esse conteúdo completo? Tenha acesso completo