Ensinando OO com Python

2.073 visualizações

Publicada em

Idéias para ensinar usando a linguagem Python

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Ensinando OO com Python

  1. 1. Ensinando OO com Python, Django e PyGame Luciano Ramalho Academia Python - Globalcode python.globalcode.com.br
  2. 2. O problema...Programar Orientado a Objetos dá mais trabalho mais conceitos para aprender, mais código para escrever, em mais arquivos retrabalho (refatoração)E as vantagens não ficam evidentes nos programaspequenos que são usados como exemplos reuso de quê?
  3. 3. A soluçãoEnsinar OO no contexto de uma biblioteca de classes ricaSempre foi assim em Smalltalk linguagem + ambiente
  4. 4. Mas e no mundo real Python?Django popular e útil, resultados rápidos graças ao adminTkinter integrado na distribuiçãoPyGame com GameEngine de Andy Harris
  5. 5. Exemplo com DjangoSistema de entrega de uma pizzaria por telefone Atendente recebe uma ligação, identifica o cliente pelo telefone ou cadastra um novo cliente e anota as pizzas do pedido Quando as pizzas ficam prontas, atendende associa um entregador ao pedido
  6. 6. Exemplo com DjangoSistema de entrega de uma pizzaria por telefone Atendente recebe uma ligação, identifica o cliente pelo telefone ou cadastra um novo cliente e anota as pizzas do pedido Quando o pedido fica pronto, atendende associa um entregador ao pedido
  7. 7. UML como meio, não fim
  8. 8. UML como meio, não fim
  9. 9. UML como meio, não fim
  10. 10. UML como meio, não fim
  11. 11. UML como meio, não fim
  12. 12. OO com jogosJogos são um ótimo contexto para exercitar OO metáforas claras: objetos = atributos + comportamentos resultados estimulantes2D x 3D 2D oferece um contexto suficientemente rico complexidade do 3D talvez não compense
  13. 13. Bibliotecas em PythonBibliotecas 2D PyGame: multi-plataforma, bem suportada, baixo nível Pyglet: alto-nível, ótima, abandonada no momento, quebrada no Ubuntu GNU Linux 11.04 e no OS X ⩾ 10.6Bibliotecas 3D sugestões?
  14. 14. Livro: Game ProgrammingGame Programming: The L Line,The Express Line to Learning Andy Harris, professor na Indiana/Purdue University ISBN: 978-0-470-06822-9 570 p. + slides publicado em fev/2007
  15. 15. Game Programming: temasIntrodução à programaçãoGráficos 2D com PyGameAnimação com PyGameAudio com PyGameProgramação orientada a eventos com PyGameProgramação orientada a objetos com GameEngine
  16. 16. Porquê?Desenho instrucional daAcademia Python !"!#$%&!()*+,- COM LUCIANO RAMALHOna Globalcode A Academia Python dá uma visão acessível e prática da linguagem: principais bibliotecas, desenvolvimento Web com Django, receitas para tarefas comuns, ! programação Orientada a Objetos e multi-paradigma e testes automatizados. ! As academias da Globalcode são formações completas compostas por vários ! módulos com muito mais tempo para os alunos interagirem com os instrutores.Especificamente: ! ! A Academia Python tem cinco módulos totalizando 112 horas aula. É fruto da ! união entre a qualidade e metodologia da Globalcode e a experiência eMódulo PY2 - conhecimento do Luciano Ramalho. Módulos da Academia Python: PY1 - Introdução à linguagem PythonOrientação a Objetos e PY2 - Orientação a Objetos e frameworks PY3 - Desenvolvimento Web com Django e JQueryFrameworks PY4 - Django pro ssional PY5 - Cloud, NoSQL e novas arquiteturas @luciano !"#$%&()%*+),%-.,%/*0 Mais informações: !"#$%&()%*+),%-./,%0/*12 2!""#$%"&())%*

×