SlideShare ist ein Scribd-Unternehmen logo
1 von 39
Downloaden Sie, um offline zu lesen
O Poder do


                     e
    Átila Medeiros Bezerra
   atila@tangerinalab.com
Alguém conhece o
    Python?
Linguagem de Programação
• Foi desenvolvida por
  Guido Van Rossum em
  1990




                               3
4
Monty Python’s Flying Circus
• Seu nome é uma
  homenagem        ao
  grupo humorístico
  inglês, adorado por
  geeks de todo o
  mundo




                                  5
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
Por que usar
  Python?
É 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
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
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
Python é Multiplataforma


Unix/Linux, Windows, Mac, OS/2 ...
 Por que isso é importante?




                                     11
Python é Multiplataforma
• Ex: Governo brasileiro




     http://www.brasil.gov.br/
                                 12
Python é Multiplataforma
• Python em dispositivos móveis
  – Symbiam (PyS60), PySide (Maemo), ASE (Android)




                                                 13
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
Quem usa Python
  no Mundo?
É Utilizada pelo Google desde 1998!




http://web.archive.org/web/19990204033714/google.stanford.edu/about.html
                                                                           16
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
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
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
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
http://www.ilmfan.com/projects
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
23
E muito mais!




http://science.nasa.gov/




                           https://www.cia.gov/
                                                                          ...
1: http://www.djangosites.org/           2: http://plone.org/support/sites/     24
Quem usa Python
   no Brasil?
• Portal reimplementado usando Python / Django




                                                   45 milhões de
                                                   acessos / dia



http://www.slideshare.net/ricobl/python-e-django-na-globocom
                                                                   26
• Reconstrução 3d de Imagens Médicas




http://svn.softwarepublico.gov.br/trac/invesalius/   27
http://legiscidade.com.br/




                             28
http://painelmaiscultura.cultura.gov.br/




                                           29
E muito mais!




                30
E muito mais (Governo)!
http://www2.planalto.gov.br/             http://www.brasil.gov.br/




                                                              ...
                       http://www2.camara.gov.br/
                                                                     31
Desenvolvimento
     Web
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
O que tem por aí?




                    34
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
Django
•   Mapeamento Objeto-Relacional
•   Interface de administração automática
•   URLs amigáveis
•   Herança de templates
•   Suporte a multilínguagem
•   ...



                                            36
Metendo a Mão na Massa




                         37
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
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

Weitere ähnliche Inhalte

Was ist angesagt?

Intro
IntroIntro
Intro
pugpe
 
Python com baterias incluídas v2.0
Python com baterias incluídas v2.0Python com baterias incluídas v2.0
Python com baterias incluídas v2.0
Jonh Edson
 
Por que Python? Latinoware 2011
Por que Python? Latinoware 2011Por que Python? Latinoware 2011
Por que Python? Latinoware 2011
Marco Mendes
 
Encontro da Comunidade Python Brasileira - FISL11
Encontro da Comunidade Python Brasileira - FISL11Encontro da Comunidade Python Brasileira - FISL11
Encontro da Comunidade Python Brasileira - FISL11
Dorneles Treméa
 
Porque Python? Semana Acadêmica UTFPR 2011
Porque Python? Semana Acadêmica UTFPR 2011Porque Python? Semana Acadêmica UTFPR 2011
Porque Python? Semana Acadêmica UTFPR 2011
Marco Mendes
 

Was ist angesagt? (20)

Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011
 
A Qualidade do Ecossistema Python - e o que podemos fazer para mante-la
A Qualidade do Ecossistema Python - e o que podemos fazer para mante-laA Qualidade do Ecossistema Python - e o que podemos fazer para mante-la
A Qualidade do Ecossistema Python - e o que podemos fazer para mante-la
 
Hackeando o Facebook com Python
Hackeando o Facebook com PythonHackeando o Facebook com Python
Hackeando o Facebook com Python
 
Intro
IntroIntro
Intro
 
Computação Visual com Python
Computação Visual com PythonComputação Visual com Python
Computação Visual com Python
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e Tk
 
Python com baterias incluídas v2.0
Python com baterias incluídas v2.0Python com baterias incluídas v2.0
Python com baterias incluídas v2.0
 
Canivete suíço do Python
Canivete suíço do PythonCanivete suíço do Python
Canivete suíço do Python
 
Por que Python? Latinoware 2011
Por que Python? Latinoware 2011Por que Python? Latinoware 2011
Por que Python? Latinoware 2011
 
Py S60
Py S60Py S60
Py S60
 
PUG-SE Institucional
PUG-SE InstitucionalPUG-SE Institucional
PUG-SE Institucional
 
Python Módulo Básico - Introdução a linguagem Python
Python Módulo Básico - Introdução a linguagem PythonPython Módulo Básico - Introdução a linguagem Python
Python Módulo Básico - Introdução a linguagem Python
 
Linguagem Python
Linguagem PythonLinguagem Python
Linguagem Python
 
Encontro da Comunidade Python Brasileira - FISL11
Encontro da Comunidade Python Brasileira - FISL11Encontro da Comunidade Python Brasileira - FISL11
Encontro da Comunidade Python Brasileira - FISL11
 
Como tornar-se um programador Python melhor
Como tornar-se um programador Python melhorComo tornar-se um programador Python melhor
Como tornar-se um programador Python melhor
 
Hackeando Dados públicos com python
Hackeando Dados públicos com pythonHackeando Dados públicos com python
Hackeando Dados públicos com python
 
Aula 01 python
Aula 01 pythonAula 01 python
Aula 01 python
 
Hackeando o Facebook e o Twitter com Python TI no Vale
Hackeando o Facebook e o Twitter com Python TI no ValeHackeando o Facebook e o Twitter com Python TI no Vale
Hackeando o Facebook e o Twitter com Python TI no Vale
 
Porque Python? Semana Acadêmica UTFPR 2011
Porque Python? Semana Acadêmica UTFPR 2011Porque Python? Semana Acadêmica UTFPR 2011
Porque Python? Semana Acadêmica UTFPR 2011
 
Desbravando a web com python - Matheus Lima
Desbravando a web com python - Matheus LimaDesbravando a web com python - Matheus Lima
Desbravando a web com python - Matheus Lima
 

Ähnlich wie O poder do Python/Django

Python e Django na Globo.com
Python e Django na Globo.comPython e Django na Globo.com
Python e Django na Globo.com
ricobl
 
Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609
gsroma
 
Introdução ao Python: Desbloqueando o Poder da Programação
Introdução ao Python: Desbloqueando o Poder da ProgramaçãoIntrodução ao Python: Desbloqueando o Poder da Programação
Introdução ao Python: Desbloqueando o Poder da Programação
Marcelo Fabiano N. de Oliveira
 

Ähnlich wie O poder do Python/Django (20)

Desvendando o python
Desvendando o pythonDesvendando o python
Desvendando o python
 
Primeiros passos em Python - Tchelinux Uruguaiana 2011
Primeiros passos em Python - Tchelinux Uruguaiana 2011Primeiros passos em Python - Tchelinux Uruguaiana 2011
Primeiros passos em Python - Tchelinux Uruguaiana 2011
 
Python-Fenalivre-Imed
Python-Fenalivre-ImedPython-Fenalivre-Imed
Python-Fenalivre-Imed
 
Slide
SlideSlide
Slide
 
Canivete python
Canivete pythonCanivete python
Canivete python
 
Por que python? fisl 14 - 2013
Por que python?   fisl 14 - 2013Por que python?   fisl 14 - 2013
Por que python? fisl 14 - 2013
 
Python: A Arma Secreta do Cientista de Dados
Python: A Arma Secreta do Cientista de DadosPython: A Arma Secreta do Cientista de Dados
Python: A Arma Secreta do Cientista de Dados
 
Palestra Apresentando Python e Suas Aplicações
Palestra Apresentando Python e Suas AplicaçõesPalestra Apresentando Python e Suas Aplicações
Palestra Apresentando Python e Suas Aplicações
 
Desenvolvimento de aplicações embarcadas utilizando Python
Desenvolvimento de aplicações embarcadas utilizando PythonDesenvolvimento de aplicações embarcadas utilizando Python
Desenvolvimento de aplicações embarcadas utilizando Python
 
Python Zope Plone - Ftec
Python Zope Plone - FtecPython Zope Plone - Ftec
Python Zope Plone - Ftec
 
O que podemos fazer com Python?
O que podemos fazer com Python?O que podemos fazer com Python?
O que podemos fazer com Python?
 
Python e Django na Globo.com
Python e Django na Globo.comPython e Django na Globo.com
Python e Django na Globo.com
 
Por Que Python É Tão Lento?
Por Que Python É Tão Lento?Por Que Python É Tão Lento?
Por Que Python É Tão Lento?
 
NãNãNã Nã - Python Refresca até Pensamento
NãNãNã Nã - Python Refresca até PensamentoNãNãNã Nã - Python Refresca até Pensamento
NãNãNã Nã - Python Refresca até Pensamento
 
Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609
 
Pythonificando a Universidade
Pythonificando a UniversidadePythonificando a Universidade
Pythonificando a Universidade
 
Com vocês, Django!
Com vocês, Django!Com vocês, Django!
Com vocês, Django!
 
Apresentação Python Poli
Apresentação Python PoliApresentação Python Poli
Apresentação Python Poli
 
Introdução ao Python: Desbloqueando o Poder da Programação
Introdução ao Python: Desbloqueando o Poder da ProgramaçãoIntrodução ao Python: Desbloqueando o Poder da Programação
Introdução ao Python: Desbloqueando o Poder da Programação
 
Python e 10 motivos por que devo conhece-la ?
Python e 10 motivos por que devo conhece-la ?Python e 10 motivos por que devo conhece-la ?
Python e 10 motivos por que devo conhece-la ?
 

Kürzlich hochgeladen

ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdfRepública Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
LidianeLill2
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
azulassessoria9
 

Kürzlich hochgeladen (20)

aprendizagem significatica, teórico David Ausubel
aprendizagem significatica, teórico David Ausubelaprendizagem significatica, teórico David Ausubel
aprendizagem significatica, teórico David Ausubel
 
AULÃO de Língua Portuguesa para o Saepe 2022
AULÃO de Língua Portuguesa para o Saepe 2022AULÃO de Língua Portuguesa para o Saepe 2022
AULÃO de Língua Portuguesa para o Saepe 2022
 
M0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptxM0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptx
 
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
 
Acessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidadeAcessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidade
 
Pesquisa Ação René Barbier Livro acadêmico
Pesquisa Ação René Barbier Livro  acadêmicoPesquisa Ação René Barbier Livro  acadêmico
Pesquisa Ação René Barbier Livro acadêmico
 
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de LedAula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
 
Missa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdfMissa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdf
 
Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)
 
Sistema de Bibliotecas UCS - Cantos do fim do século
Sistema de Bibliotecas UCS  - Cantos do fim do séculoSistema de Bibliotecas UCS  - Cantos do fim do século
Sistema de Bibliotecas UCS - Cantos do fim do século
 
O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
Aula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .pptAula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .ppt
 
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
 
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdfRepública Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
 

O poder do Python/Django

  • 1. O Poder do e Átila Medeiros Bezerra atila@tangerinalab.com
  • 3. Linguagem de Programação • Foi desenvolvida por Guido Van Rossum em 1990 3
  • 4. 4
  • 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
  • 7. Por que usar Python?
  • 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
  • 11. Python é Multiplataforma Unix/Linux, Windows, Mac, OS/2 ... Por que isso é importante? 11
  • 12. Python é Multiplataforma • Ex: Governo brasileiro http://www.brasil.gov.br/ 12
  • 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
  • 15. Quem usa Python no Mundo?
  • 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
  • 23. 23
  • 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. Quem usa Python no Brasil?
  • 26. • Portal reimplementado usando Python / Django 45 milhões de acessos / dia http://www.slideshare.net/ricobl/python-e-django-na-globocom 26
  • 27. • Reconstrução 3d de Imagens Médicas http://svn.softwarepublico.gov.br/trac/invesalius/ 27
  • 31. E muito mais (Governo)! http://www2.planalto.gov.br/ http://www.brasil.gov.br/ ... http://www2.camara.gov.br/ 31
  • 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. O que tem por aí? 34
  • 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
  • 37. Metendo a Mão na Massa 37
  • 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
  • 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