Desenvolvendo Aplicações Web com Python

Post on 06-Apr-2017

472 views 5 download

Transcript of Desenvolvendo Aplicações Web com Python

DesenvolvendoAplicações Web com

Luiz Cláudio Silva

luizclaudio@gmail.com

@luizclaudios

luizclaudiosilva

Sim. Mas, quePython é esse?

Linguagem de programação de alto nível

e de uso geral

Poderosa Rápida Cooperativa

Multiplataforma AbertaAmigável

● Multiparadigma● Tipagem dinâmica e forte● Interpretada (bytecodes)● Memória gerenciada (GC)

● Ambiente interativo● "Vem com baterias"

● Duas versões ativas: 2.x e 3.x

Quem usa ?

http://forextecnologic.info/apex-web-marketing-and-web-development-company-2/

No programa de hoje:

Desenvolvimento de aplicações Web

● E-mail (SMTP, IMAP, etc.)

● Outros protocolos (FTP, SSH, XMPP, etc.)

● Programação baixo nível (sockets)

● Scraping

● O que você pensou :-)

Era assim...

http://www.codeniters.com/what-is-a-web-server.html

Depois, assim...

http://www.codeniters.com/what-is-a-web-server.html

Ainda apareceram...

E os Web Services...

http://archive.oreilly.com/pub/a/onjava/2005/05/25/j2ee-services.html

Smartphone

Desktop

OutraAplicação

REST APIsobre HTML

Resources(URIs)

Methods(POST, GET, PUT,

DELETE)

Custom Headers

APLICAÇÃO

ServidorClientes

HTML Req

XML/JSON Res

E, agora, as RESTful APIs...

HTML Req

XML/JSON Res

HTML Req

XML/JSON Res

(baseado no padrão MVC)

Web Development

VIEW

MODELGET, POST, etc.

HTML, XML, JSON, etc.

consultas

atualizações

parâmetros

HTML, XML,JSON, etc.

CONTROLLER

Web Dev

CONTROLLER

Web Dev

WSGIWeb Server Gateway Interface

Web Server MiddlewareWSGI

AplicaçãoPython

chamada à aplicação Python

headers e conteúdo

headers e conteúdo

variáveis e função de callback

CONTROLLER

Web Dev

WSGIWeb Server Gateway Interface

CONTROLLER

Web Dev

Python Web Servers

CONTROLLER

Web Dev

Template Engines

VIEW

Web Dev

Static Site Generators

VIEW

Web Dev

Código Python(dados e comportamento)

Bancos de Dados(RDB e/ou NoSQL)

módulo baseadona Python DB API

Driver ODBC

API nativas,em Pytyhon

MODEL

Web Dev

Object-Relational Mappers

MODEL

Frameworks

Full-Stack Frameworks

Microframeworks

Content Management Systems (CMS)

Referências:

http://www.python.org

http://www.python.org.br

https://docs.python.org/2/howto/webservers.html

http://www.fullstackpython.com/

https://www.digitalocean.com/community/tutorials/a-comparison-of-web-servers-for-python-based-web-applications

https://www.python.org/dev/peps/pep-0249/

https://wiki.python.org/moin/WebFrameworks/

http://www.slant.co/topics/426/~general-purpose-python-web-frameworks-usable-in-production-sites

http://wiki.python.org.br/PythonParaWeb

Luiz Cláudio Silva

luizclaudio@gmail.com

@luizclaudios

luizclaudiosilva