O documento discute as vantagens da linguagem de programação Python, incluindo sua sintaxe simples e legível, tipagem dinâmica forte, alta produtividade, e suporte multiplataforma. Também descreve como Python é amplamente utilizada por grandes empresas como Google, YouTube, Industrial Light & Magic e DreamWorks.
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. Filosofia Pythonica
Complexo é melhor que complicado
Agora é melhor que nunca
Bonito é 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
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. 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. 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
13. Python é Multiplataforma
• Python em dispositivos móveis
– Symbiam (PyS60), PySide (Maemo), ASE (Android)
13
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
16. É Utilizada pelo Google desde 1998!
http://web.archive.org/web/19990204033714/google.stanford.edu/about.html
16
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, Inc
http://groups.google.com/group/comp.lang.python/browse_thread/thread/af75a3e91a03ec18/
17
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. O usa!
“Python é rápido o suficiente para o nosso site e permite que nós produzamos
features que podem ser mantidas em tempo recorde, com o mínimo de
desenvolvedores.“ Cuong Do, Arquiteto de Software, Youtube.com.
http://www.python.org/about/quotes/
“O Youtube (uma das propriedades mais valiosas do Google) é essencialmente todo
Python [...].” Alex Martelli, Líder técnico, Sistemas de produção, Google, Inc
http://groups.google.com/group/comp.lang.python/browse_thread/thread/af75a3e91a03ec18/
19
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
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ês
razõ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 [...]. E
Python é uma cidadã de primeira classe [...] na nossa industria.” Darin Grant, Chefe
de Produção de Tecnologia, DreamWorks.
http://www.linuxjournal.com/article/9653
22
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
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. Django
• Mapeamento Objeto-Relacional
• Interface de administração automática
• URLs amigáveis
• Herança de templates
• Suporte a multilínguagem
• ...
36
38. Mais de 15 anos de atuação no mercado de TI
Membro do Porto Digital
Membro da Softex Recife
Sede PARTEC – Recife (PE)
Átila Medeiros Bezerra
atila@tangerinalab.com
Av. Rui Barbosa, 472 – Graças – Recife/PE
CEP: 52011-040
PABX/FAX: 81 3423-6466
www.partecweb.com.br
currículos:curriculos@tangerinalab.com