Python para iniciantes
-
Upload
richardsonlima -
Category
Technology
-
view
11.114 -
download
4
description
Transcript of Python para iniciantes
Por Richardson Lima [email protected] 1
Richardson [email protected]
[email protected]://richardsonlima.foxylinux.com
Por Richardson Lima [email protected] 2
Atenção
• O prazer de construir um programa em Python pode causar dependência
psicológica.
• Brincadeirinhaaaa !!!
Por Richardson Lima [email protected] 3
Esboço • O que é Python?
• Por que usar Python?
• Python, em comparação com outras linguagens.
Por Richardson Lima [email protected] 4
O que é Python?
Por Richardson Lima [email protected] 5
Porquê Python
• Seu nome é uma homenagem ao grupo humorístico inglês Monty Python,adorado por geeks de todo o mundo.
Por Richardson Lima [email protected] 6
O que é Python ?
- Prototipagem rápida de linguagem OO
- Não é apenas uma linguagem de scripting- Não apenas um outro Perl
- Extensível (incremento de novos módulos)C / C ++ / Fortran / qualquer coisa =)
Java (através Jython)- Possível incorporar em aplicações
Por Richardson Lima [email protected] 7
Propriedades de alto nível- Extremamente portátil.
- Unix, Windows, Mac, BeOS, Win / CE, DOS, OS / 2, Amiga, VMS, Cray, ...
- Compilado para código interpretador byte code.- Compilação é implícita e automática.
- Gerenciamento automático de memória.
Por Richardson Lima [email protected] 8
O que é Python
- Livre (open source)Direitos autorais, mas não uso restrito
- Apoio da comunidade de usuários- Design elegante, fácil de aprender
Lê como "pseudo-código"Adequada como primeira linguagem
Por Richardson Lima [email protected] 9
Interfaces para o ...- COM, DCOM, ODBC- Bases de dados comerciais- Java (Jython)- Muitas bibliotecas GUI
• Plataforma independente - Tk, wxWindows, GTK
• Plataforma específica - MFC, MacOS, X11/Motif
Por Richardson Lima [email protected] 10
Propriedades da linguagem - Tudo é um objeto- Módulos, classes, funções- Manipulação de exceção - Digitação dinâmica, polimorfismoStatic scoping
- Operador de sobrecarga (overloading)- Indentação para bloquear estrutura
Por Richardson Lima [email protected] 11
Tipos de dados de alto nível - Números: int, long, float, complex- Strings: imutável- Listas e dicionários: contentores- Outros tipos de e.x. dados binários, expressões regulares, introspecção
Por Richardson Lima [email protected] 12
Por que usar Python?
Por Richardson Lima [email protected] 13
Produtividade!- Tempo de desenvolvimento reduzido,
> A codificação é mais rápida que C, C + +, Java.
- Manutenção de código > Código é extremamente legível
- Menor tempo de aprendizado> Linguagem é muito fácil de aprender
Por Richardson Lima [email protected] 14
Em que pode utilizado?
- Prototipagem rápida- Web scripting (HTML, HTTP, ...)
- Programação ad hoc,aplicações científicas- Processamento de XML (XML-RPC and SOAP )
- Base de dados (Oracle, MySQL, PostgreSQL, ODBC, ...)
- Aplicações GUI
Por Richardson Lima [email protected] 15
Quem está usando?
- LLNL, Fermilab- Grupo CMU no Alice (gráficos 3D)- ObjectDomain (extensão de ferramenta UML)- Infoseek (linguagem scripting)- Industrial Light & Magic (tudo)- Yahoo! (CGI no Yahoo! Mail)- Digital Creations (Zope)- RedHat (Ferramentas de instalação)
Por Richardson Lima [email protected] 16
Criador
• Criada em 1989 pelo holandêsGuido van Rossum no Centrumvoor Wiskunde en Informatica (CWI), em Amsterdã,Holanda.
• O projeto de sistema operacional distribuído Amoeba precisava de uma linguagem de script. Nasce o Python.
Por Richardson Lima [email protected] 17
Python no Brasil• Embratel: monitoramento das interfaces de backbone eclientes de internet, também existem scripts de uso interno.• CPqD: monitoramento de centrais telefônicas.• GPr Sistemas: Desenvolvimento de aplicações sob encomenda,
sistemas como monitoramento de transporte terrestre via satélite são as soluções já feitas.
• Outras que utilizam o Python para sistemas Web, como Varig , Serpro ,Interlegis , ...
• Os sistemas web de gestão de conteúdo usando o trio Python/Zope/Plone vem crescendo a cada dia, principalmente em grandes empresas e em órgãos do governo.
Por Richardson Lima [email protected] 18
Python no mundo
• Apesar da associação cômica, Pythonvem sendo usada em projetos sérios por entidades como Google,Yahoo, NASA, InfoSeek, MCI Worldcom, IBM e Hiway, a maior empresa de hospedagem de web-sites do mundo.
Por Richardson Lima [email protected] 19
Comunidade Mundial
• URL: http://python.org/• Mail: [email protected], [email protected]• IRC: irc.freenode.org, canal #python
Por Richardson Lima [email protected] 20
Comunidade Brasileira
• URL: http://www.pythonbrasil.com.br/• Mail: [email protected]• IRC: irc.freenode.org, canal #python-br
Por Richardson Lima [email protected] 22
Python vs. Perl- Mais fácil de aprender- Boa para o uso ocasional- Código mais legível- Manutenção do código - Menos "mágicas ", efeitos colaterais- Mais "segurança", garantias- Melhor integração Java
Por Richardson Lima [email protected] 23
Python vs. Tcl- Orientação a objeto- Sintaxe mais diferenciada
- Muito mais rápido (mesmo que Tcl 8.x)- Menos necessidade de extensões C
- Se usar extensões C não redefini a sintaxe> extensão, portanto, menos conflitos
- Melhor integração Java
- Python usa Tk como GUI std
Por Richardson Lima [email protected] 24
Python vs. Java- Código 5-10 vezes mais conciso
- Digitação dinâmica - Desenvolvimento muito rápido
- Não tens que compilar- Menos tempo de digitação
- Sim, vai mais devagar !!!- Mas o desenvolvimento é muito mais rápido!
- Utilize Python com Java: Jython!
Por Richardson Lima [email protected] 25
Python em web-applications
• Python é tambem a base do Zope, a mais sofisticada plataforma para construção de web-applications disponível hoje como open-source.
Por Richardson Lima [email protected] 26
Recursos
• Apesar de sua sintaxe simples e clara, Python oferece recursos disponíveis também em linguagens mais complicadas como Java e C++.
Por Richardson Lima [email protected] 27
Detalhes dos recursos
• Programação orientada a objetos
• Um moderno mecanismo para o tratamento de erros
• Possibilidade de executar o mesmo programa sem modificações em várias plataformas
• Recursos avançados de manipulação de textos, listas e outras estruturas de dados
• Módulos, uma forma inteligente de acessar e organizar código a ser reutilizado
Por Richardson Lima [email protected] 28
Orientação a Objeto
• Já vi muita gente dizer que uma linguagem é orientada a objetos porque
você pode criar interfaces gráficas.
• Não tem nada a ver.
Por Richardson Lima [email protected] 29
Detalhe
• Isso não significa, é claro, que não se pode criar aplicações com interfaces gráficas com Python ou com qualquer outra linguagem orientada ou não a objetos.
Por Richardson Lima [email protected] 30
Python OO
• Python é uma linguagem orientada a objetos, e nela quase tudo é um objeto, números, strings,funções, classes, instancias, métodos, ...
Por Richardson Lima [email protected] 31
Python Destrói !!!
• Python nos oferece uma sintaxe simples mas ao mesmo tempo suporta a maior parte das características importantes de linguagens modernas e amplamente utilizadas como Java, C++, Perl e VBScript.
Por Richardson Lima [email protected] 32
Seu primeiro código Python
• >>> print “Oi, Mundo !"• Oi, Mundo !
• Em JAVA !!!• Class Oi Mundo {• public static void main (String[] args) {• System.out.println(“ Oi, Mundo”) ;• }• }
Por Richardson Lima [email protected] 33
Brincando com Python !
• #!/usr/bin/env python• import os• if os.path.isdir("/tmp"):• print "/tmp é um diretório "• else:• print "/tmp não é um diretório "
Por Richardson Lima [email protected] 35
Contato
• Richardson Lima ( hachid )
• Email: [email protected]• Website: http://richardsonlima.foxylinux.com
• aMSN: [email protected]
• Obtenha esta palestra em:http://www.foxylinux.com/python/PythonPalestra-RichardsonLima-branco.pdf