Projeto para a faculdade? Canivete Python resolve!

4,322 views
4,150 views

Published on

Slides da palestra apresentada no XI encontro da comunidade pernambucana de Python.
Essa palestra fala, rapidamente e de forma bem humorada, sobre o lema "baterias incluidas" do Python onde quase tudo que será necessário para o desenvolvimento de um bom projeto já vem na instalação padrão.

Published in: Education
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,322
On SlideShare
0
From Embeds
0
Number of Embeds
920
Actions
Shares
0
Downloads
53
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Projeto para a faculdade? Canivete Python resolve!

  1. 1. PROJETO PARA A FACULDADE? Canivete Python Resolve! Guilherme Medeiros www.FReNeTiC.com.br @FReNeTiC_Br
  2. 2. Baseado em Fatos Reais Estes slides contam a saga de um computeiro para implementar seu Trabalho de Conclusão de Curso
  3. 3. O INIMIGO MOSTRA SUA FACE <ul><li>Capítulo 1 </li></ul>
  4. 4. Você está vivendo a sua vida feliz
  5. 5. Distraído, aproveitando sua juventude
  6. 6. Quando um novo desafio aparece <ul><li>TCC </li></ul><ul><li>Projeto de cadeira </li></ul><ul><li>Implementações sem sentido que os professores pedem </li></ul><ul><li>Algum parente pede um software “simplesinho” </li></ul><ul><li>Padaria da esquina precisa de um sisteminha de ponto de venda </li></ul>
  7. 7. AS PRIMEIRAS REAÇÕES <ul><li>Capítulo 2 </li></ul>
  8. 8. Assim que o desafio aparece
  9. 9. 10 minutos depois
  10. 10. 1 hora depois
  11. 11. Incrédulo, ainda tenta entender seu novo destino
  12. 12. Levanta o queixo e encara a realidade
  13. 13. E agora só resta uma única opção
  14. 14. CHALLENGE ACCEPTED
  15. 15. OMG! PYRANDO NO PYTHON <ul><li>Capítulo 3 </li></ul>
  16. 16. Baixando o Python <ul><li>http://python.org/download/ </li></ul><ul><ul><li>WIN downs, Mac & Linux o/ </li></ul></ul><ul><li>2.X ou 3.X? </li></ul><ul><ul><li>Se não sabe escolher, vá de 2.X! </li></ul></ul><ul><ul><ul><li>Recomendação do próprio portal Python </li></ul></ul></ul><ul><li>GO! GO! GO! </li></ul>
  17. 17. Por Que Python? <ul><li>Fácil de aprender </li></ul><ul><ul><li>1 dia estudando Python já resolve 90% dos seus problemas (experiência própria) </li></ul></ul><ul><li>Sintaxe simples e elegante </li></ul><ul><li>Portável </li></ul><ul><li>Multiparadigmas </li></ul><ul><li>Comunidade FORTE </li></ul><ul><li>Baterias Incluídas </li></ul><ul><ul><li>O nosso Canivete Python </li></ul></ul>
  18. 18. Porque este é você quando aprende Python
  19. 19. E este é você programando em Python
  20. 20. HOJE TEM MARMELADA? E IDE, TEM? <ul><li>Capítulo 4 </li></ul>
  21. 21. Item 01 – A IDE IDLE <ul><li>Distribuída desde a versão 2.3 </li></ul><ul><li>Totalmente feita em Python </li></ul><ul><ul><li>Logo, multiplataforma </li></ul></ul><ul><li>Cores no código, sistema de identação, debugger, call tips , acesso interativo ao interpretador e muito mais! </li></ul><ul><li>http://docs.python.org/library/idle.html </li></ul>
  22. 22. Item 01 – A IDE IDLE
  23. 23. Item 01 – A IDE IDLE <ul><li>Com uma IDE inclusa, só resta uma coisa: </li></ul><ul><ul><li>PROGRAMAR! </li></ul></ul><ul><li>Parafraseando capitão Nascimento: </li></ul><ul><ul><li>Senta o dedo nessa COISA! </li></ul></ul>
  24. 24. GUI NÃO É APELIDO DE GUILHERME <ul><li>Capítulo 5 </li></ul>
  25. 25. Item 02 – A Biblioteca Tkinter <ul><li>Tkinter = TK Interface </li></ul><ul><ul><li>Uma interface Python para a Tk GUI Toolkit </li></ul></ul><ul><li>Um montão de widgets prontas </li></ul><ul><ul><li>Botões, Scrollbars, Menus, Spinboxes, Dialogs de arquivos e mais, mais, MOAR! </li></ul></ul><ul><li>A poderosa widget CANVAS </li></ul><ul><ul><li>Utilizada para exibir e editar gráficos e desenhos </li></ul></ul><ul><ul><li>Desenhar widgets personalizados </li></ul></ul><ul><ul><ul><li>Loading bar é um bom exemplo </li></ul></ul></ul>
  26. 26. Item 02 – A Biblioteca Tkinter Referências: http://docs.python.org/library/tkinter.html
  27. 27. Item 03 – A Biblioteca Tix <ul><li>Tix – Tk Interface Extension </li></ul><ul><ul><li>Adiciona cerca de 40 Widgets novos ao Tkinter </li></ul></ul><ul><ul><ul><li>É widget para dar com pau agora! </li></ul></ul></ul><ul><li>As classes no módulo Tix são subclasses do módulo Tkinter </li></ul><ul><ul><li>Logo, importar Tix implica em importar Tkinter </li></ul></ul><ul><ul><ul><li>Apenas import Tix é suficiente </li></ul></ul></ul><ul><ul><ul><li>Não esquecer de substituir Tkinter.tk por Tix.tk </li></ul></ul></ul>
  28. 28. Item 03 – A Biblioteca Tix Referências: http://docs.python.org/library/tix.html
  29. 29. ME SALVA MEU HERÓI! <ul><li>Capítulo 6 </li></ul>
  30. 30. Item 04 – A Biblioteca SQLite3 <ul><li>SQLite é uma biblioteca em C </li></ul><ul><ul><li>Inclusa no Python a partir da versão 2.5 </li></ul></ul><ul><li>Forma simples e fácil de criar um banco de dados local </li></ul><ul><ul><li>Baseado em arquivos </li></ul></ul><ul><ul><li>Não necessita de um programa do tipo servidor </li></ul></ul><ul><ul><li>Usa uma versão mais simples, e menos rica, da linguagem SQL </li></ul></ul>
  31. 31. Item 04 – A Biblioteca SQLite3 <ul><li>Criando um banco de dados local </li></ul>
  32. 32. Item 04 – A Biblioteca SQLite3 <ul><li>Inserindo dados </li></ul>
  33. 33. Item 04 – A Biblioteca SQLite3 <ul><li>Recuperando dados </li></ul>
  34. 34. CORAÇÃO_DE_MÃE.ZIP CABE TODO MUNDO <ul><li>Capítulo 7 </li></ul>
  35. 35. Item 05 – A Biblioteca GZip <ul><li>Interface simples para compactar e descompactar arquivos .GZ </li></ul><ul><li>Funciona exatamente como os programar Gzip e Gunzip </li></ul><ul><li>Referência: http://docs.python.org/library/gzip.html#module-gzip </li></ul>
  36. 36. Item 06 – A Biblioteca Zipfile <ul><li>Permite ler, compactar, descompactar, adicionar arquivos, e muito mais, em arquivos .zip </li></ul><ul><li>Consegue ler e descriptografar arquivos criptografados </li></ul><ul><ul><li>Mas (ainda) não consegue criar ou escrever arquivos criptografados </li></ul></ul><ul><li>Referência: http://docs.python.org/library/zipfile.html#module-zipfile </li></ul>
  37. 37. Item 07 – A Biblioteca Tarfile <ul><li>Permite ler e escrever arquivos .tar </li></ul><ul><ul><li>Inclusive os compactados com gzip e bz2 </li></ul></ul><ul><li>Suporta 3 formatos de arquivos .tar </li></ul><ul><ul><li>POSIX.1-1998 (USTAR_FORMAT) </li></ul></ul><ul><ul><li>O formato GNU (GNU_FORMAT) </li></ul></ul><ul><ul><li>POSIX.1-2001 (PAX_FORMAT) </li></ul></ul><ul><ul><ul><li>Mais flexível dos formatos e o mais recomendado para uso </li></ul></ul></ul><ul><li>Referência: http://docs.python.org/library/tarfile.html#module-tarfile </li></ul>
  38. 38. MOAR! MOAR! MOAR! <ul><li>Capítulo 8 </li></ul>
  39. 39. Item 08 – A Biblioteca os.path <ul><li>Uma implementação simples para trabalhar com caminhos de pastas </li></ul><ul><ul><li>Encontrar arquivos e pastas </li></ul></ul><ul><ul><li>Verificar existência </li></ul></ul><ul><ul><li>Saber tamanho do arquivo </li></ul></ul><ul><ul><li>E mais uma penca de facilidades! </li></ul></ul><ul><li>Referência: http://docs.python.org/library/os.path.html#module-os.path </li></ul>
  40. 40. Item 09 - A Biblioteca Pydoc <ul><li>Gera, automaticamente, documentações de módulos Python </li></ul><ul><ul><li>Imprimir documentação no console </li></ul></ul><ul><ul><li>Abrir a documentação em um navegador web </li></ul></ul><ul><ul><li>Salvar a documentação em arquivos HTML </li></ul></ul><ul><li>Referência: http://docs.python.org/library/pydoc.html#module-pydoc </li></ul>
  41. 41. MOAR?! <ul><li>Urllib2 – Conjunto de funções simples para abrir URLs </li></ul><ul><ul><li>http://docs.python.org/library/urllib2.html#module-urllib2 </li></ul></ul><ul><li>HTMLParser – Forma simples de parsear arquivos HTML e XHTML </li></ul><ul><ul><li>http://docs.python.org/library/htmlparser.html#module-HTMLParser </li></ul></ul><ul><li>Xml.parser.expat – Parser simples para arquivos XML </li></ul><ul><ul><li>http://docs.python.org/library/pyexpat.html#module-xml.parsers.expat </li></ul></ul>
  42. 42. E AGORA JOSÉ? <ul><li>Capítulo 9 </li></ul>
  43. 43. E Agora José? <ul><li>Programou em Python? </li></ul><ul><li>Usou apenas o canivete? </li></ul><ul><li>Tá feliz? </li></ul><ul><ul><li>Queima o seu projeto num CD </li></ul></ul><ul><ul><li>Queima no mesmo CD o instalador da versão Python que você usou </li></ul></ul><ul><ul><li>Cria um READEME.txt </li></ul></ul><ul><ul><li>Envia para o professor (Tio, cliente, Orientador) </li></ul></ul>
  44. 44. E Agora José?

×