Transcript
Page 1: Python para iniciantes

Por Richardson Lima [email protected] 1

Richardson [email protected]

[email protected]://richardsonlima.foxylinux.com

Page 2: Python para iniciantes

Por Richardson Lima [email protected] 2

Atenção

• O prazer de construir um programa em Python pode causar dependência

psicológica.

• Brincadeirinhaaaa !!!

Page 3: Python para iniciantes

Por Richardson Lima [email protected] 3

Esboço • O que é Python?

• Por que usar Python?

• Python, em comparação com outras linguagens.

Page 4: Python para iniciantes

Por Richardson Lima [email protected] 4

O que é Python?

Page 5: Python para iniciantes

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.

Page 6: Python para iniciantes

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

Page 7: Python para iniciantes

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.

Page 8: Python para iniciantes

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

Page 9: Python para iniciantes

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

Page 10: Python para iniciantes

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

Page 11: Python para iniciantes

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

Page 12: Python para iniciantes

Por Richardson Lima [email protected] 12

Por que usar Python?

Page 13: Python para iniciantes

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

Page 14: Python para iniciantes

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

Page 15: Python para iniciantes

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)

Page 16: Python para iniciantes

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.

Page 17: Python para iniciantes

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.

Page 18: Python para iniciantes

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.

Page 19: Python para iniciantes

Por Richardson Lima [email protected] 19

Comunidade Mundial

• URL: http://python.org/• Mail: [email protected], [email protected]• IRC: irc.freenode.org, canal #python

Page 20: Python para iniciantes

Por Richardson Lima [email protected] 20

Comunidade Brasileira

• URL: http://www.pythonbrasil.com.br/• Mail: [email protected]• IRC: irc.freenode.org, canal #python-br

Page 21: Python para iniciantes

Por Richardson Lima [email protected] 21

PythonCOMPARAÇÃO COM

OUTRAS LINGUAGENS

Page 22: Python para iniciantes

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

Page 23: Python para iniciantes

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

Page 24: Python para iniciantes

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!

Page 25: Python para iniciantes

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.

Page 26: Python para iniciantes

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++.

Page 27: Python para iniciantes

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

Page 28: Python para iniciantes

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.

Page 29: Python para iniciantes

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.

Page 30: Python para iniciantes

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, ...

Page 31: Python para iniciantes

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.

Page 32: Python para iniciantes

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”) ;• }• }

Page 33: Python para iniciantes

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 "

Page 34: Python para iniciantes

Por Richardson Lima [email protected] 34

The central philosophy of Python

• In [1]: import this

Page 35: Python para iniciantes

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


Top Related