Python na Web

7,631
-1

Published on

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

Published in: Technology
2 Comments
7 Likes
Statistics
Notes
  • Muito bom mesmo
       Reply 
    Are you sure you want to  Yes  No
    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
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
7,631
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
179
Comments
2
Likes
7
Embeds 0
No embeds

No notes for slide

Python na Web

  1. 1. Python na Web Igor Sobreira www.igorsobreira.com
  2. 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. 3. Como se programa em Python pra web?
  4. 4. Existem muitos frameworks muitos mesmo...
  5. 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. 6. Começando por baixo...
  7. 7. WSGI Web Server Gateway Interface PEP 333
  8. 8. Uma interface que permite servidores e aplicações conversarem, de maneira simples e portável
  9. 9. Ilustração de Ian Bicking
  10. 10. PEP 333 “...WSGI must be easy to implement...” Mas não pra vocês, e sim pra quem cria frameworks e servidores
  11. 11. Middleware
  12. 12. Ilustração de Ian Bicking
  13. 13. • Autenticação • Compressão • Debug • Signed Cookies • etc...
  14. 14. Alguns servidores WSGI • Apache (mod_wsgi) • Paste • Cherrypy • Twisted • wsgiref (builtin) http://www.wsgi.org/wsgi/Servers
  15. 15. Frameworks
  16. 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. 17. CMS Servidor de aplicações Conent Management System
  18. 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. 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. 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. 21. • Full Stack • Também implementou seus componentes • Interface administrativa muito rica (dá pra programar pelo browser!)
  22. 22. Google App Engine • Rode sua aplicação na infraestrutura do Google • Autenticação pelo Google • Big Table • Suporta vários frameworks
  23. 23. Monte o seu!
  24. 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. 25. Mas eu quero fazer tudo sozinho!
  26. 26. Boa sorte :-)
  27. 27. O que mais? não exatamente python-related related
  28. 28. Use um sistema de controle de versão • Mas eu acho que não precis... • Você tá errado, use! Bazar
  29. 29. Use um sistema de controle de deployment • Fabric (Python) • Capistrano (Ruby)
  30. 30. Exemplo do Fabric fabfle.py $ fab deploy
  31. 31. É isso. Dúvidas?
  32. 32. Contato • www.igorsobreira.com • igor@igorsobreira.com Junte-se a comunidade • www.grupypb.net • www.python.org • www.python.org.br
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×