Top Banner
Google App Engine e Python Renzo Nuccitelli Engenheiro de Computação – ITA [email protected]
17

Python, Google App Engine e Webapp-CE

Dec 18, 2014

Download

Documents

Pequena apresentação sobre o uso do Webapp-CE na infra do Google App Engine
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Python, Google App Engine e Webapp-CE

Google App Engine e Python

Renzo NuccitelliEngenheiro de Computação – ITA

[email protected]

Page 2: Python, Google App Engine e Webapp-CE

Objetivo

Explicar a infra do Google App Engine utilizando o framework Python Webapp-CE

Page 3: Python, Google App Engine e Webapp-CE

Roteiro

• Google App Engine• Webapp-CE• Problema Base: Cadastro de Pessoas• Controller• Modelo• View• Formulário e Validação• Aplicação Comercial: Revelação Virtual• Conclusões

Page 4: Python, Google App Engine e Webapp-CE

Google App Engine

• Cloud do Google• Suporte a 3 linguagens: Java, Python e Go• Modelo SaaS (Software as a Service)• https://appengine.google.com/• GAE para os mais íntimos

Page 5: Python, Google App Engine e Webapp-CE

Google App Engine : Vantagens

• Escalável• Centralizada e excelente documentação• Excelente API• “Pay as you go”, com cota grátis• Abstração da camada de persistência• Definição dos dados na própria linguagem.

Page 6: Python, Google App Engine e Webapp-CE

Google App Engine: Desvantagens

• Lock-in da API e dos dados• Restrições nas pesquisas• Restrições na duração de requisições• Adaptação de desenvs acostumados a outros

ambientes

Page 7: Python, Google App Engine e Webapp-CE

Webapp-CE

• Framework web• Mapeamento de urls ao estilo PHP• Validação de formulários• Transformação de dados para o modelo• Instalação através da simples cópia de

arquivos a setup de arquivo app.yaml• http://code.google.com/p/webapp-ce/

Page 8: Python, Google App Engine e Webapp-CE

Problema Base

• Construir Applicativo Web para cadastro de pessoas

• Ferramentas: Google Launcher + Pydev (Plugin Python para Eclipse)

• Será que fazemos em 30 minutos?

Page 9: Python, Google App Engine e Webapp-CE

Controller

• Criar controller na pasta private• Delegar handler para cehandler no app.yaml• Mapear links com cengine

Page 10: Python, Google App Engine e Webapp-CE

Modelo

• Big Table – Banco de Dados não relacional• Módulo db do GAE• Criar Classe User com Nome (name) e

Telefone (phone) e Id do Google (googleid)• Criar método estático para achar usuário

corrente logado (getCurrent)

Page 11: Python, Google App Engine e Webapp-CE

View

• Templates Django• Utilizar classe Form do pacote ce.forms para

gerar o formulário básico• Criar formulário para cadastro de usuário

(módulo ce.forms)• Criar lista de usuários cadastrados• Criar classe para renderizar templates

Page 12: Python, Google App Engine e Webapp-CE

Formulário e Validação

• Classe Form de ce.forms já faz validação básica• Método validate• Método transform• Possível extender com suas regras de

validação e transformação

Page 13: Python, Google App Engine e Webapp-CE

Aplicação Comercial

• Site Revelação Virtual www.revelacaovirtual.com.br

• Mais de 200 mil fotos transmitidas em 2010• Desenvolvido com equipe enxuta

Page 14: Python, Google App Engine e Webapp-CE

Conclusões

• Apenas introdução, faltou muito coisa (Segurança, Filtros, Cache e etc)

• Ambdev simples• Administração via web• Framework enxuto e open source• Opção barata para startups de tecnologia

(cota grátis e custo variável)

Page 15: Python, Google App Engine e Webapp-CE

Roteiro

• Google App Engine• Webapp-CE• Problema Base: Cadastro de Pessoas• Controller• Modelo• View• Formulário e Validação• Aplicação Comercial Real: Revelação Virtual• Conclusões

Page 16: Python, Google App Engine e Webapp-CE

Objetivo

Explicar a infra do Google App Engine utilizando o framework Python Webapp-CE

Page 17: Python, Google App Engine e Webapp-CE

Obrigado pela atenção!Perguntas?