50
WEB2PY ELLOÁ B. GUEDES APLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017

WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY

ELLOÁ B. GUEDES

APLICAÇÕES WEBDESCOMPLICADASEM PYTHON

PYCON AMAZÔNIA 2017

Page 2: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

Elloá B. Guedes

Laboratório de Pesquisa e Soluções emSoftwares e Sistemas Inteligentes

Docente da Escola Superior de Tecnologia

Doutora em Ciência da Computação

Page 3: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY• Concebido por Massimo di Pierro• Criado em 2007• Open-source

Desenvolvimento ágil de aplicações web seguras baseadas em banco de dados

Page 4: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY• Frameworkfull-stack• Servidor web:Rocket• Bancodedados:SQLite• IDE:Navegador web

• Leve eescalável• Deploysimples

Page 5: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY.COM

Page 6: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 7: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 8: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 9: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

TOY EXAMPLE• Vendadecarros usados• Carros• Placa,Modelo,Tipo,Ano,Fotos,Kmrodados,etc.

• Projeto:PyUsados

Page 10: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 11: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 12: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: MVC

Page 13: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: MVC

Page 14: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: MVC

• Representa os dados• Tabelas eregras• Leitura eescrita no

banco

Page 15: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 16: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 17: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 18: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 19: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 20: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: MODEL• Compatibilidade comdiversos SGBDs

• SQLite(default),MySQL,PostgreSQL,Oracle,NOSQL,etc.

• Muitos tipos deFieldseFormatação Específica• Datetime,password,chaves estrangeiras,etc.

Page 21: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: MVC

• Funções daaplicação web

• Interage comobancodedados

Page 22: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: MVC

• Cada função docontrolleré mapeada parauma página web• Controllerpadrão:default

Page 23: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 24: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

…/PYUSADOS/DEFAULT/INDEX

Page 25: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

TOY EXAMPLE• Quero cadastrar umcarro!

• Crie afunção cadastraCarro noController

Page 26: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 27: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: MVC

• Interação dousuário comaaplicação

Page 28: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 29: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 30: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

…/PYUSADOS/DEFAULT/CADASTRACARRO

Page 31: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

Model

Page 32: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

Controller

Page 33: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

View

Page 34: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 35: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY• Bancodedados:SQLite

• Geração dinâmica dobancodedadosedoscomandos SQL

• Geração automática daView• FrameworkBootstrap.js

Page 36: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 37: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: EXEMPLOS• Consulta ao bancoevisualização dosresultados

• Novafunção nocontrollerdefault:

Page 38: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 39: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 40: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 41: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: JSON

Page 42: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: EXEMPLOS• Só quero seminovos:carros produzidos apartir de2015

Page 43: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações
Page 44: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: CONTROLE DE ACESSO

• Usuários,login,senha,autenticação,restriçãodeacesso,etc.

• Web2pycuida disso

• Usuáriosegrupos

• Proteçãoaosdadosdousuário

Page 45: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

WEB2PY: CONTROLE DE ACESSO

• Anotar os métodosparaindicarpermissões• @auth.requires_login()• @auth.requires_membership('admin')

Page 46: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

DEPLOYMENT• Publicável na maioria dosservidores webcomsuporte aWSGI

Page 47: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

JÁ UTILIZAM WEB2PY

• http://www.web2py.com/poweredby

Page 48: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

DJANGOWEB2PY X• Model-View-Controller • Model-View-Template

• Linha decomando• Interfaceweb

• Practicallybeatspurity • Explicitisbetterthanimplicit

• PyDAL • ORM

• Views:{{python}} • Templates:linguagem própria

Page 49: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

PARA SABER MAISAplicações prontas• web2py.com/appliances

Documentação• web2py.com/book

Python Brasil • https://wiki.python.org.br/web2py

Page 50: WEB2PY - Elloá B. GuedesAPLICAÇÕES WEB DESCOMPLICADAS EM PYTHON PYCON AMAZÔNIA 2017. Elloá B. Guedes ... • Criado em 2007 • Open-source Desenvolvimento ágil de aplicações

Elloá B. [email protected]

OBRIGADA!