pyjamas: uma ferramenta pythônica para web

21
1 de20 Pyjamas: Uma ferramenta pythônica para web Nielson Avelino de Santana

Upload: nielson-santana

Post on 06-Jun-2015

1.439 views

Category:

Education


17 download

DESCRIPTION

A apresentação falar sobre Ajax e seus benefícios; Abordar o Google web Toolkit e aplicações desenvolvidas com gwt e com o uso massivo de ajax;Em seguida abordar o porque do surgimento do pyjamas, que no caso vem a ser a reescrita gwt em python; No final dar alguns exemplos da construção de aplicações com o uso do pyjamas.

TRANSCRIPT

Page 1: Pyjamas: Uma Ferramenta Pythônica para Web

1 de 20

Pyjamas: Uma ferramenta pythônica para web

Nielson Avelino de Santana

Page 2: Pyjamas: Uma Ferramenta Pythônica para Web

2 de 20

Que é o palestrante?

Nielson Avelino de Santana - @nielsonnas

• Atualmente: Bolsista de iniciação a docência - CAPES• Graduando em Licenciatura plena em Ciência da Computação

-UFRPE

Trabalha com desenvolvimento software educacional

Pouco mais de um ano de contato com python

Membro do Grupo de Usuários de Python de Pernambuco (PUG-PE)

Page 3: Pyjamas: Uma Ferramenta Pythônica para Web

3 de 20

Pauta do dia

• Página web clássica vs Uso de ajax;o Desvantages do modelo clássico;o Vantagens do uso ajax;

• O Google Web Toolkit

• O Pyjamas

• Exemplos;

Page 4: Pyjamas: Uma Ferramenta Pythônica para Web

4 de 20

A arquitetura web clássica

Page 5: Pyjamas: Uma Ferramenta Pythônica para Web

5 de 20

Asynchronous Javascript And XML  “ AJAX não é uma tecnologia. São, na verdade, várias tecnologias, cada uma florescendo a seu modo, ereunindo-se em poderosas formas ”

 (Jesse James garret)

Como solucionar isso?

Page 6: Pyjamas: Uma Ferramenta Pythônica para Web

6 de 20

Arquitetura Web com Ajax

Page 7: Pyjamas: Uma Ferramenta Pythônica para Web

7 de 20

• Os dados trafegados pela rede são reduzidos;

• O usuário não precisa aguardar a página ser recarregada a cada interação com o servidor;

• O navegador não é apenas um terminal de conteúdo burro;

Vantagens do uso do Ajax

Page 8: Pyjamas: Uma Ferramenta Pythônica para Web

8 de 20

• O Google Web Toolkit é uma ferramenta de código aberto que permite a desenvolvedores criar e manter complexas aplicações em JavaScript  usando a linguagem Java;

• As aplicações feitas com o gwt, são semelhantes a aplicações desktops em relação a interatividade, além de ser muito mais fácil de manter;

• Como os desenvolvedores podem perder até  90% do tempo com peculiaridades de navegadores o gwt pode ser uma boa opção pois funcina nos principais navegadores.

O Google Web Toolkit - gwt

Page 9: Pyjamas: Uma Ferramenta Pythônica para Web

9 de 20

• Com o Google Web Toolkit (GWT), você cria o front end AJAX na linguagem de programação Java e o GWT, então, faz a compilação cruzada para o JavaScript otimizado que funciona automaticamente com todos os principais navegadores. Durante o desenvolvimento, é possível criar rapidamente como no JavaScript, no mesmo ciclo "editar - atualizar - exibir" com o qual você está acostumado, com a vantagem adicional de poder depurar e percorrer o código Java linha por linha. 

Como funciona o Web toolkit

Page 10: Pyjamas: Uma Ferramenta Pythônica para Web

10 de20

Exemplos do uso do gwt

http://docs.latexlab.org

Google maps

Page 11: Pyjamas: Uma Ferramenta Pythônica para Web

11 de20

• É uma ferramenta e um framework para o desenvolvimento de aplicações web em python. Ele contem um compilador de python para javascript, possui um framework Ajax e um conjunto de controles, onde através do uso destes, desenvolvedores podem escrever aplicações completas para rodar em todos os principais navegadores, sem escrever uma única linha de código em javascript. 

• O Pyjamas nasceu após o sucesso do Google Web Toolkit, e inclusive é meio que a reescrita do gwt para python. Pode-se usar a API do Google Web Toolkit para o Pyjamas.

• O Pyjamas está na versão 0.7, e já faz praticamente tudo que é possível fazer com o google web toolkit. O pyjamas possui apenas cerca de 9.000 linhas enquanto o gwt, 80.000 linhas.

O Pyjamas 

Page 12: Pyjamas: Uma Ferramenta Pythônica para Web

12 de20

• Porque não se usou jython (implementação de python para máquina virtual java) como linguagem de programação ao invés do java, e assim o compilarar para javascript com gwt?

• A resposta é simples:o O gwt, compila o código fonte java para javascript e não

o código intermediário;

Porque reescrever o gwt?

Page 13: Pyjamas: Uma Ferramenta Pythônica para Web

13 de20

• Dinâmico e componentes de interface gráfica reutilisáveis;• O desenvolvedor pode escrever seu código javascript

dendro do código python e incluir outras bibliotecas javascript;

• Simple mecanismo para RPC;• É software livre;• O desenvolvedor pode usar orientação a objetos pura, para

desenvolver aplicações;• Suporta tipos básicos do python, emulados no javascript,

tais como Lista, Dicionário, Tupla, String e muitas outras funções builtin tais como map, filter, range além de exceções são suportadas;

• entre outras...

Recursos do Pyjamas

Page 14: Pyjamas: Uma Ferramenta Pythônica para Web

14 de20

Hieraquia de Classes do Pyjamas

Page 15: Pyjamas: Uma Ferramenta Pythônica para Web

15 de20

Compilação1. Traduz o código python para

JavaScript;2. Implementação em JavaScript de

módulos comumente usados como, funções builtin e classes da linguagem python( tais como strings, lists, dictionaries, tuples, sets, getattr, map, filter, range etc. tratamento de exceções, datetime e o módulo matemático;

3. Um módulo para criação de controles e módulo para manipulação do DOM no navegador;

4. Controi o pacote da aplicação;

Page 16: Pyjamas: Uma Ferramenta Pythônica para Web

16 de20

Sites usando Pyjamas

Campo minadohttp://pymines.appspot.com/

Site para assintir vídeos do Youtubehttp://www.campusmixes.com

Page 17: Pyjamas: Uma Ferramenta Pythônica para Web

17 de20pyjs.org

Bom, mas e agora, como começar?Acessar o site e fazer o donwload da versão mais recente do

Pyjamas

Page 18: Pyjamas: Uma Ferramenta Pythônica para Web

18 de20

Tutorial Instalação do Pyjamas no Windows XPhttp://clawcoder.blogspot.com/2011/03/now-for-good-stuff-followed-wiki-post.html

Tutorial Instalação do Pyjamas no Ubuntuhttp://pyjs.org/wiki/pyjamasubuntu/

Instalação do Pyjamas

Page 19: Pyjamas: Uma Ferramenta Pythônica para Web

19 de20

http://pyjs.org/

http://clawcoder.blogspot.com/2011/03/now-for-good-stuff-followed-wiki-post.html

http://code.google.com/p/pyjamas/

http://pyjd.sourceforge.net/api/

http://en.wikipedia.org/wiki/Pyjamas_(software)

Referências

Page 20: Pyjamas: Uma Ferramenta Pythônica para Web

20 de20

 

 

Nielson Avelino de Santana

Email: [email protected]: @nielsonnas

Page 21: Pyjamas: Uma Ferramenta Pythônica para Web

21 de20