Python na Web
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Python na Web

  • 9,777 views
Uploaded on

Uma visão geral de como usar Python para desenvolvimento web.

Uma visão geral de como usar Python para desenvolvimento web.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • Muito bom mesmo
    Are you sure you want to
    Your message goes here
  • Legal a apresentação, infelizmente não deu pra ir para o evento, os slides ficaram bons mesmos, é um palestrante profissional mesmo, só faltou tu ajeitar lá o quem sou, era pra ter colocado também sou blogueiro, tal, hehe
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
9,777
On Slideshare
9,501
From Embeds
276
Number of Embeds
7

Actions

Shares
Downloads
174
Comments
2
Likes
6

Embeds 276

http://igorsobreira.com 112
http://www.igorsobreira.com 98
http://www.slideshare.net 52
http://localhost 9
http://li20-198.members.linode.com 3
http://ptk.igorsobreira.com 1
http://50.112.249.105 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Python na Web Igor Sobreira www.igorsobreira.com
  • 2. Eu • sou Igor Sobreira • programo em Python a 4 anos • atualmente só com web • Smart Nuts Technology • Soda Virtual • Faço TSI no IFPB (antigo CEFET-PB) • Velejo de windsurf nas horas vagas (e raras)
  • 3. Como se programa em Python pra web?
  • 4. Existem muitos frameworks muitos mesmo...
  • 5. 4Suite Karrigell Albatross Maki Aquariun Snakelets mod_python Berry Sparck mnml Bottle Spyce newf Circuits TurboGears Paste CherryPy Wasp Pylons Crusader web.py Python Server Pages Cymberline web2py Python Servlet Engine Divmod Nevow webpyte Python Gearfsh Django Webware PyWebLib Gizmo QP JOWWeb2 Quixote Juno SkunkWeb Zope Fonte: http://www.slideshare.net/hdiogenes/wsgi-pycon-brasil-2008-presentation (Humberto Diógenes)
  • 6. Começando por baixo...
  • 7. WSGI Web Server Gateway Interface PEP 333
  • 8. Uma interface que permite servidores e aplicações conversarem, de maneira simples e portável
  • 9. Ilustração de Ian Bicking
  • 10. PEP 333 “...WSGI must be easy to implement...” Mas não pra vocês, e sim pra quem cria frameworks e servidores
  • 11. Middleware
  • 12. Ilustração de Ian Bicking
  • 13. • Autenticação • Compressão • Debug • Signed Cookies • etc...
  • 14. Alguns servidores WSGI • Apache (mod_wsgi) • Paste • Cherrypy • Twisted • wsgiref (builtin) http://www.wsgi.org/wsgi/Servers
  • 15. Frameworks
  • 16. O que eu preciso? no mínimo... • Persistência de dados • Engine de templates • Mapeador de URLs • Controle de sessões • Formulários e validação • Outras apresentações do conteúdo • RSS, Atom, JSON, XML O que temos por aí?
  • 17. CMS Servidor de aplicações Conent Management System
  • 18. • Full Stack, e extremamente fexível • Reúsa vários componentes já existentes • É fácil substituir qualquer um • a idéia é justamente essa!
  • 19. TurboGears • Full Stack, também reúsa componentes WSGI existentes • mas não tanto com a flosofa de fexibilidade do Pylons • aliás, TG2 usa Pylons :-)
  • 20. Django • Atualmente o mais popular no mundo python • Full Stack, e não reúsa nada • isso ajuda muito a integração interna de componentes • Quebra seu “projeto” em “aplicações” • facilita muito o reúso (já tem muita app por aí) • ele mesmo já tem algumas, como o admin é o que eu uso :-)
  • 21. • Full Stack • Também implementou seus componentes • Interface administrativa muito rica (dá pra programar pelo browser!)
  • 22. Google App Engine • Rode sua aplicação na infraestrutura do Google • Autenticação pelo Google • Big Table • Suporta vários frameworks
  • 23. Monte o seu!
  • 24. Escolha os módulos que você mais gosta e use SQLAlchemy, DejaVu, Storm, CounchDB, MongoDB... Beaker Jinja2, Genhi, Mako Routes Paste CherryPy ... Repoze Werkzeug
  • 25. Mas eu quero fazer tudo sozinho!
  • 26. Boa sorte :-)
  • 27. O que mais? não exatamente python-related related
  • 28. Use um sistema de controle de versão • Mas eu acho que não precis... • Você tá errado, use! Bazar
  • 29. Use um sistema de controle de deployment • Fabric (Python) • Capistrano (Ruby)
  • 30. Exemplo do Fabric fabfle.py $ fab deploy
  • 31. É isso. Dúvidas?
  • 32. Contato • www.igorsobreira.com • igor@igorsobreira.com Junte-se a comunidade • www.grupypb.net • www.python.org • www.python.org.br