25
Web Toolkit Universidade Vila Velha Hugo Corteletti e Lorran Pegoretti Trabalho realizado para avaliação na disciplina de Programação Avançada para WEB, do curso de Ciência da Computação, turno matutino, da Universidade de Vila Velha (UVV), ministrada pelo professor Vinicius Rosalen. 2013

GWT

Embed Size (px)

DESCRIPTION

Apresentação sobre GWT (Google Web Toolkit), Apresentação realizada para a matéria de Programação Avançada para WEB da Universidade de Vila Velha. Alunos: Lorran Pegoretti e Hugo Corteletti Torezani.

Citation preview

Page 1: GWT

Web ToolkitUniversidade Vila Velha

Hugo Corteletti e Lorran Pegoretti

Trabalho realizado para avaliação na disciplina de Programação Avançada para WEB, do curso de Ciência da Computação, turno matutino, da Universidade de

Vila Velha (UVV), ministrada pelo professor Vinicius Rosalen.2013

Page 2: GWT

Tópicos Abordados

O que é o GWT? História Vantagens Desvantagens Começando uma aplicação Google APIs Desenvolvimento com GWT Empresas que utilizam GWT

Page 3: GWT

O que é o GWT?

Framework para desenvolvimento de aplicações ricas para internet que traduz código Java em código JavaScript

Lema: “Produtividade para desenvolvedores, desempenho para usuários.”

Deixar uma interface rica e que funcione nos principais navegadores é muito difícil devido à falta de padrões existentes entre os navegadores

O Google Web Toolkit foi criado com intuito de ajudar os desenvolvedores nessa tarefa

Definição: “Google Web Toolkit (GWT) é um kit de ferramentas de desenvolvimento para a construção e otimização de aplicações complexas baseadas em browser.”

Page 4: GWT

História

Sua versão 1.0 foi lançada em 16 de maio de 2006, tendo sido apresentado na conferência JavaOne naquele mesmo ano

Em agosto de 2010 o Google focou o GWT para eclipse, lançando com o Google Plugin for Eclipse

Sua versão atual é a 2.5.1 que foi lançada em março de 2013

Page 5: GWT

Compilação

Page 6: GWT

Vantagens

Processamento de apresentação é todo realizado no cliente

Menor uso de recursos do servidor Escalabilidade

Menor tráfego de rede Após o carregamento inicial apenas dados trafegam, pois a lógica de exibição e as

telas já estão todas no cliente

Page 7: GWT

Vantagens

Compilador JavaScript Alta performance

Erros encontrados em tempo de compilação

Múltiplos navegadores

Permite utilizar JavaScript no código Java via JSNI (JavaScript Native Interface) JSNI é o responsável por fazer a integração diretamente com o código Java

Page 8: GWT

Desvantagens

Tamanho do JavaScript inicial pode ser grande

Não é possível utilizar todas as classes do Java do lado do cliente, apenas um conjunto delas

Classes utilizadas no lado do cliente devem ser traduzíveis para JavaScript Uso de bibliotecas de terceiros

Há menor controle sobre o código do cliente no aplicativo

Difícil de debugar CSS

Difícil de simular integração com outras tecnologias (ex. Flash)

Page 9: GWT

Começando uma Aplicação

Necessário download do plugin GWT para a IDE.

Page 10: GWT

Começando uma Aplicação

Main.gwt.xml: O arquivo do módulo XML do projeto, contido no pacote raiz do projeto, é um arquivo XML que detém as configurações completas da aplicação necessárias por um projeto GWT

Page 11: GWT

Começando uma Aplicação

inherits: Especifica os módulos herdados por este módulo. Neste simples caso, nós só herdamos a funcionalidade fornecida pelo módulo User, que é integrada ao framework GWT. Quando sua aplicação se torna mais complexa, a herança de módulo permite que você reutilize partes de funcionalidade de uma maneira rápida e eficiente

entry-point: Refere-se à classe que será instanciada pelo framework GWT quando o módulo for carregado

Main.gwt.xml

Page 12: GWT

Começando uma Aplicação

MainEntryPoint.java: A classe que designa o ponto de entrada principal da aplicação, conforme especificado em Main.gwt.xml. Ela estende a classe EntryPoint e, quando o módulo GWT é carregado pelo framework, essa classe é instanciada e seu método onModuleLoad() é chamado automaticamente

Page 13: GWT

Começando uma AplicaçãoMainEntryPoint.java

Page 14: GWT

Começando uma Aplicação

MainEntryPoint.java

o método onModuleLoad() default do EntryPoint adiciona os seguintes componentes à aplicação:

Label: Um novo Label GWT é criado, exibindo o texto, 'Hello, GWT!!!'. O label é adicionado ao RootPanel através da linha final do código, RootPanel.get().add(label)

Button: Um novo Button (Botão) GWT é criado, exibindo o texto “Click me!” com um listener do botão, implementado por ClickListener. O listener do botão especifica que quando o botão é clicado, o label fica oculto

Page 15: GWT

Começando uma Aplicação

MainEntryPoint.java

O botão é adicionado ao RootPanel por meio da penúltima linha de código.

Page 16: GWT

Começando uma Aplicação

welcomeGWT.html: A página HTML do host gerada, que é o arquivo de boas-vindas designado para a aplicação. O arquivo web.xml usa o elemento welcome-file para especificar que a página do host será a página inicial exibida no browser quando a aplicação for implantada. A página do host referencia o caminho para o código-fonte JavaScript e pode referenciar a folha de estilo da aplicação

Page 17: GWT

Começando uma AplicaçãowelcomeGWT.html

Page 18: GWT

Começando uma Aplicação

welcomeGWT.html

meta: Aponta para o diretório de projeto da aplicação. Essa tag fornece um link entre a página HTML e a aplicação

script: Importa códigos do arquivo JavaScript do framework GWT. Esse arquivo contém o código necessário para o bootstrap do framework GWT. Ele usa a configuração no módulo do projeto e carrega dinamicamente o JavaScript criado ao compilar o ponto de entrada para entregar à aplicação. O arquivo JavaScript é gerado pelo framework GWT ao executar a aplicação no modo hospedado ou ao compilar a aplicação

Page 19: GWT

Google APIs

Google+ API

Google Books API

Google Calendar API

Google APIs Discovery Service

Google Latitude API

Google Tasks API

Google URL Shortener (goo.gl)

Page 20: GWT

API Google Maps

A API do Google Maps fornece uma API JavaScript que permite que você adicione a funcionalidade de mapeamento para a sua aplicação

A biblioteca do Google Maps para o GWT permite que você acesse este API JavaScript a partir do código Java compilado com o compilador GWT

Page 21: GWT

API Google Maps

Page 22: GWT

API Google Maps

Page 23: GWT

Desenvolvimento com GWT

 Facilita o desenvolvimento de aplicações que façam uso de Ajax

Evita que o desenvolvedor perca tempo com detalhes técnicos durante a criação de aplicações web bastante dinâmicas

Evita incompatibilidades entre browsers e plataformas e permite maior modularização dos componentes AJAX e JavaScript

Page 24: GWT

Empresas que utilizam GWT

GFT Brasil Consultoria Informática Ltda. O Grupo GFT é um dos principais fornecedores mundiais de

serviços de TI para o setor financeiro. Presente no Brasil desde 2005, a empresa emprega cerca de 160 profissionais no país.

INCORP Softwares estratégicos para administração de conselhos

regionais de profissões regulamentadas, autoatendimento via web e gestão de processos eleitorais.

Certificada nível G do MPS.BR

Converge TI Empresa especializada no desenvolvimento de soluções para

empresas.

Page 25: GWT

Referências Google Web Toolkit Overview - https://

developers.google.com/web-toolkit/overview

Google Web Toolkit - http://en.wikipedia.org/wiki/Google_Web_Toolkit#History

Aplicação NetBeans - https://netbeans.org/kb/docs/web/quickstart-webapps-gwt_pt_BR.html

API do Google Maps - https://code.google.com/p/gwt-google-apis/wiki/MapsGettingStarted

Mail app - http://gwt.googleusercontent.com/samples/Mail/Mail.html

Empresas que utilizam GWT no Brasil - https://groups.google.com/forum/?fromgroups#!topic/gwt-brasil/K7NiaY1hkMw