O poder do Python/Django

1.423 visualizações

Publicada em

Publicada em: Educação
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.423
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
45
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

O poder do Python/Django

  1. 1. O Poder do e Átila Medeiros Bezerra atila@tangerinalab.com
  2. 2. Alguém conhece o Python?
  3. 3. Linguagem de Programação• Foi desenvolvida por Guido Van Rossum em 1990 3
  4. 4. 4
  5. 5. Monty Python’s Flying Circus• Seu nome é uma homenagem ao grupo humorístico inglês, adorado por geeks de todo o mundo 5
  6. 6. Filosofia Pythonica Complexo é melhor que complicado Agora é melhor que nuncaBonito é melhor que feio Simples é melhor que complexo Legibilidade conta Explícito é melhor que implícito Plano é melhor que aninhado Ao encarar a ambigüidade, recuse a tentação de adivinhar 6 Por: Tim Peters
  7. 7. Por que usar Python?
  8. 8. É Fácil de Aprender• Sintaxe clara, muito próxima de um pseudo-código. file = open(“texto.txt”) for linha in file: Python Java print linha file.close() FileInputStream fstream = new FileInputStream("texto.txt"); BufferedReader in = new BufferedReader(new InputStream Reader(in)); while (in.ready()) { System.out.println(in.readLine()); } in.close(); 8
  9. 9. Tipagem Dinâmica e Forte• Objetos não podem mudar de tipo• Não há conversão automática de tipo X O que é comum em linguagens de script como: php, javascript e perl Ex: “9” + 10 = “910” Em Python é levantada um exceção, pois isso é uma fonte de bugs difíceis de localizar e tratar 9
  10. 10. Alta produtividade• Tempo de desenvolvimento reduzido – Comparado a Java normalmente o código 5 vezes menor• Código extremamente legível tornando mais fácil a manutenção• Possui um vasto repertório de bibliotecas 10
  11. 11. Python é MultiplataformaUnix/Linux, Windows, Mac, OS/2 ... Por que isso é importante? 11
  12. 12. Python é Multiplataforma• Ex: Governo brasileiro http://www.brasil.gov.br/ 12
  13. 13. Python é Multiplataforma• Python em dispositivos móveis – Symbiam (PyS60), PySide (Maemo), ASE (Android) 13
  14. 14. Vários gurus recomendam• Eric Raymond – em seu HOW-TO "Como se tornar um Hacker“ – recomenda ao aspirante aprender Python primeiro“Se você não sabe nenhuma linguagem de computador, eu recomendo começar com Python. É bem projetada, bem documentada, e relativamente boa para iniciantes. Apesar de ser uma ótima linguagem para o aprendizado da programação, não é apenas um brinquedo, é muito poderosa e flexível e bem adequada para grandes projetos.”http://www.catb.org/~esr/faqs/hacker-howto.html 14
  15. 15. Quem usa Python no Mundo?
  16. 16. É Utilizada pelo Google desde 1998!http://web.archive.org/web/19990204033714/google.stanford.edu/about.html 16
  17. 17. O que o acha do Python? "Python tem sido uma parte importante do Google desde o início, e permanece assim conforme o sistema cresce e evolui. Hoje, dezenas de engenheiros do Google usam Python, e estamos procurando por mais pessoas com conhecimento nessa linguagem.“ Peter Norvig, diretor de qualidade de busca do Google, Inc.http://www.python.org.br/wiki/PythonNoGoogle “*...+ nossa filosofia geral é ‘Python onde podemos, C++ onde somos obrigados.’ Python não é definitivamente apenas um pequeno pedaço, nem é usado apenas para tarefas de ‘scripiting’; se ficássemos sem todo nosso código Python de uma hora para outra, nossa poderosa infra-estrura que tem sido descrita como a ‘arma secreta do Google’ ficaria abalada.” Alex Martelli, Líder técnico, Sistemas de produção, Google, Inchttp://groups.google.com/group/comp.lang.python/browse_thread/thread/af75a3e91a03ec18/ 17
  18. 18. Onde o usa o Python?• Sistema de ajuda do GMail• Google Groups• Sistema de compilação de aplicativos (build system).• Sistema de empacotamento e entrega de dados (packaging system).• Sistema de monitoramento e manutenção do cluster• Sistema de testes• ... 18
  19. 19. O usa!“Python é rápido o suficiente para o nosso site e permite que nós produzamosfeatures que podem ser mantidas em tempo recorde, com o mínimo dedesenvolvedores.“ Cuong Do, Arquiteto de Software, Youtube.com.http://www.python.org/about/quotes/“O Youtube (uma das propriedades mais valiosas do Google) é essencialmente todoPython [...].” Alex Martelli, Líder técnico, Sistemas de produção, Google, Inchttp://groups.google.com/group/comp.lang.python/browse_thread/thread/af75a3e91a03ec18/ 19
  20. 20. Industrial Light and Magic “Python desempenha um papel chave no nosso esquema de produção. Sem ela um projeto do tamanho de ‘Guerra nas Estrelas: Episódio II teria sido muito difícil de sair. Da renderização da multidão ao processamento em lote e a composição, Python mantêm todas as partes unidas.” Tommy Burnet te, Diretor técnico Sênior, ILM.http://www.python.org/about/quotes/ “Quando me transferi [...], todos os membros da equipe [...] me acompanharam - menos Tommy. Ele [...] ele fora contratado pela Industrial Light and Magic [...]. Tommy se tornou um destacado programador da linguagem Python, por sorte dele a linguagem escolhida pela empresa de Lucas. E sorte mesmo é quando o preparo se une a oportunidade.” Rand Pausch, A lição final.http://pythonologia.org/2008/09/24/a-licao-final/ 20
  21. 21. 21http://www.ilmfan.com/projects
  22. 22. DreamWorks“Gostaria de ser tudo Python, mas hoje ainda temos muito de Perl.”Ed Leonard, Diretor de Tecnologia de Animação, DreamWorks. http://www.linuxjournal.com/article/9653“Nossa equipe tem baseado a transição de Perl para Python na facilidade. Há trêsrazões primárias para isso. A criação de binding em Python para uma biblioteca C++é muito fácil [...]. A natureza orientada a objetos de Python é muito atraente [...]. EPython é uma cidadã de primeira classe [...] na nossa industria.” Darin Grant, Chefede Produção de Tecnologia, DreamWorks. http://www.linuxjournal.com/article/9653 22
  23. 23. 23
  24. 24. E muito mais!http://science.nasa.gov/ https://www.cia.gov/ ...1: http://www.djangosites.org/ 2: http://plone.org/support/sites/ 24
  25. 25. Quem usa Python no Brasil?
  26. 26. • Portal reimplementado usando Python / Django 45 milhões de acessos / diahttp://www.slideshare.net/ricobl/python-e-django-na-globocom 26
  27. 27. • Reconstrução 3d de Imagens Médicashttp://svn.softwarepublico.gov.br/trac/invesalius/ 27
  28. 28. http://legiscidade.com.br/ 28
  29. 29. http://painelmaiscultura.cultura.gov.br/ 29
  30. 30. E muito mais! 30
  31. 31. E muito mais (Governo)!http://www2.planalto.gov.br/ http://www.brasil.gov.br/ ... http://www2.camara.gov.br/ 31
  32. 32. Desenvolvimento Web
  33. 33. O que preciso? No mínimo ...• Servidor de aplicação web• Persistência de dados Acho que você• Engine de templates vai precisar de ajuda!• Mapeador de URLs• Controle de sessões• Formulários e validações• Modulo de autenticação• Kit de ferramentas ajax 33
  34. 34. O que tem por aí? 34
  35. 35. Django• Framework web escrito em Python• Focado no desenvolvimento ágil• Automatiza algumas tarefas do processo de desenvolvimento• Mantém o desenvolvedor com foco no negócio “Nós fazemos a parte repetitiva, você faz o que interessa” 35
  36. 36. Django• Mapeamento Objeto-Relacional• Interface de administração automática• URLs amigáveis• Herança de templates• Suporte a multilínguagem• ... 36
  37. 37. Metendo a Mão na Massa 37
  38. 38. Mais de 15 anos de atuação no mercado de TIMembro do Porto DigitalMembro da Softex Recife Sede PARTEC – Recife (PE)‫‏‬Átila Medeiros Bezerraatila@tangerinalab.comAv. Rui Barbosa, 472 – Graças – Recife/PECEP: 52011-040PABX/FAX: 81 3423-6466www.partecweb.com.brcurrículos:curriculos@tangerinalab.com
  39. 39. Referências• Comunidade – http://www.pythonbrasil.com.br/ – http://br.groups.yahoo.com/group/python-brasil/ – http://pug.pe – https://groups.google.com/group/pug-pe?hl=pt• IDEs – http://aptana.com/ – http://www.jetbrains.com/pycharm/ – http://eric-ide.python-projects.org/index.html• Onde aprender – http://ark4n.wordpress.com/python/ – http://blog.triveos.com.br/2011/01/04/curso-completo-de-python-e-django/ – http://welcometothedjango.com.br/ – http://www.aprendendodjango.com/ – https://docs.djangoproject.com/en/1.3/intro/tutorial01/ 39

×