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
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
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.
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
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/
Problema Base
• Construir Applicativo Web para cadastro de
pessoas
• Ferramentas: Google Launcher + Pydev (Plugin
Python para Eclipse)
• Será que fazemos em 30 minutos?
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)
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
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
Aplicação Comercial
• Site Revelação Virtual
www.revelacaovirtual.com.br
• Mais de 200 mil fotos transmitidas em 2010
• Desenvolvido com equipe enxuta
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)
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