SlideShare una empresa de Scribd logo
1 de 51
Descargar para leer sin conexión
Encontros
SP-GTUG
2010
Algoritmos em Python
Fernando Masanori <fmasanori@gmail.com>
27 março 2010




                                          Encontros
                                          SP-GTUG
                                          2010
• Apresentação
• Motivação para o GTUG
• Algoritmos clássicos (Python 3.1)
  – Código
  – E mais código
• Google App Engine (Python 2.5)
  – Código
  – E mais código
• Referências
                                      Encontros
                                      SP-GTUG
                                      2010
Apresentação
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
•   Graduação Computação IME-USP
•   Mestrado Computação ITA
•   ed e lint Unix Cobra
•   Credicard Mastercard
•   PriceWaterhouseCoopers
•   Professor FATEC SJC
•   Business Intelligence with Pentaho
•   Google Technology User
•   E o público? Professores? Estudantes?
•   Desenvolvedores: C, Java, Python?       Encontros
                                            SP-GTUG
                                            2010
Motivação para o GTUG
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
”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.

                                                           Encontros
                                                           SP-GTUG
                                                           2010
“[…] our general philosophy there is "Python where we can, C++ where
we must". Alex Martelli, Líder Técnico, Sistemas de Produção, Google Inc.
                                                              Encontros
                                                              SP-GTUG
                                                              2010
"Python is fast enough for our site and allows us to produce maintainable
          features in record times, with a minimum of developers,“
                 Cuong Do, Software Architect, YouTube.com

                                                                Encontros
                                                                SP-GTUG
                                                                2010
Algoritmos Clássicos (Python 3.1)
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
Algorithm March with Ninjas




                              Encontros
                              SP-GTUG
                              2010
“A good algorithm is like a sharp knife: it does what it is supposed to do with a
                     minimum amount of applied effort.”
    T. Cormen, C. Leiserson, R. Rivest, C. Stein, Introduction to Algorithms




                                                                         Encontros
                                                                         SP-GTUG
                                                                         2010
“A Computação anda sobre
 três pernas: a correção, a
 eficiência e a elegância.”
          I. Simon




                      Encontros
                      SP-GTUG
                      2010
Jogo da Forca
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
Encontros
SP-GTUG
2010
Encontros
SP-GTUG
2010
Encontros
SP-GTUG
2010
Encontros
SP-GTUG
2010
Encontros
SP-GTUG
2010
Urllib.request e API do Twitter
...................................................................................................



 Bateria inclusa


                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
Encontros
SP-GTUG
2010
Banco de Dados
...................................................................................................



 Bateria inclusa


                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
“Programming is best regarded as the process of creating
    works of literature, which are meant to be read.”
           D.E. Knuth, Literate Programming




                                                           Encontros
                                                           SP-GTUG
                                                           2010
Pygame.mixer
...................................................................................................



 Obs.: necessita instalação Pygame


                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
Encontros
SP-GTUG
2010
Encontros
SP-GTUG
2010
Google App Engine (Python 2.5)
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
Hello World
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
Encontros
SP-GTUG
2010
• app.yaml para gtug-sp.appspot.com




                                      Encontros
                                      SP-GTUG
                                      2010
Clock1
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
Encontros
SP-GTUG
2010
Clock2 handler wsgi
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
Encontros
SP-GTUG
2010
Clock3 users
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
Encontros
SP-GTUG
2010
Encontros
SP-GTUG
2010
Clock4 user timezone (2º handler)
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
• app.yaml com




                 Encontros
                 SP-GTUG
                 2010
Encontros
SP-GTUG
2010
Encontros
SP-GTUG
2010
• models.py




              Encontros
              SP-GTUG
              2010
• prefs.py




             Encontros
             SP-GTUG
             2010
Clock5 memcache
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
• models.py




              Encontros
              SP-GTUG
              2010
Encontros
SP-GTUG
2010
Referências (execute o código dos links!!)
...................................................................................................




                                                                                          Encontros
                                                                                          SP-GTUG
                                                                                          2010
Código fonte em:                 Encontros
http://www.headfirstlabs.com/books/hfprog/   SP-GTUG
                                             2010
Código fonte em:                 Encontros
http://www.rmi.net/~lutz/lp4e-examples.html   SP-GTUG
                                              2010
Código fonte em:            Encontros
http://ae-book.appspot.com/downloads/   SP-GTUG
                                        2010
Agradecimentos




  www.globalcode.com.br



                          Encontros
                          SP-GTUG
                          2010

Más contenido relacionado

Más de FATEC São José dos Campos

Lista de exercícios III Desafios python para zumbis
Lista de exercícios III Desafios python para zumbisLista de exercícios III Desafios python para zumbis
Lista de exercícios III Desafios python para zumbisFATEC São José dos Campos
 

Más de FATEC São José dos Campos (20)

Seja feliz programando em python
Seja feliz programando em pythonSeja feliz programando em python
Seja feliz programando em python
 
Import community pycon jp
Import community pycon jpImport community pycon jp
Import community pycon jp
 
Import community
Import communityImport community
Import community
 
Diversidade na Comunidade Python
Diversidade na Comunidade PythonDiversidade na Comunidade Python
Diversidade na Comunidade Python
 
Why python
Why pythonWhy python
Why python
 
Hackeando Dados públicos com python
Hackeando Dados públicos com pythonHackeando Dados públicos com python
Hackeando Dados públicos com python
 
Import community
Import communityImport community
Import community
 
Python, the next Brazilian generation
Python, the next Brazilian generationPython, the next Brazilian generation
Python, the next Brazilian generation
 
Para gostar de Python DevDay
Para gostar de Python DevDay Para gostar de Python DevDay
Para gostar de Python DevDay
 
Classic Games with Python in the browser
Classic Games with Python in the browserClassic Games with Python in the browser
Classic Games with Python in the browser
 
Exercício Programa 1 Python para Zumbis
Exercício Programa 1 Python para ZumbisExercício Programa 1 Python para Zumbis
Exercício Programa 1 Python para Zumbis
 
Lista de exercícios III Desafios python para zumbis
Lista de exercícios III Desafios python para zumbisLista de exercícios III Desafios python para zumbis
Lista de exercícios III Desafios python para zumbis
 
TWP56 DJ Mix 1
TWP56 DJ Mix 1TWP56 DJ Mix 1
TWP56 DJ Mix 1
 
TWP54 Exceções
TWP54 ExceçõesTWP54 Exceções
TWP54 Exceções
 
TWP52 MVC Model View Controller
TWP52 MVC Model View ControllerTWP52 MVC Model View Controller
TWP52 MVC Model View Controller
 
TWP50 Interface Gráfica GUI
TWP50 Interface Gráfica GUITWP50 Interface Gráfica GUI
TWP50 Interface Gráfica GUI
 
TWP47 Módulos
TWP47 MódulosTWP47 Módulos
TWP47 Módulos
 
TWP45 Hackeando o Facebook com Python
TWP45 Hackeando o Facebook com PythonTWP45 Hackeando o Facebook com Python
TWP45 Hackeando o Facebook com Python
 
TWP42 Banco de Dados
TWP42 Banco de DadosTWP42 Banco de Dados
TWP42 Banco de Dados
 
TWP40 Revisão Geral 3
TWP40 Revisão Geral 3TWP40 Revisão Geral 3
TWP40 Revisão Geral 3
 

Último

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfNatalia Granato
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 

Último (6)

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 

Python no Appengine - Encontros GTUG-SP