23 de outubro de 2008

Python é isso, Python é aquilo

Quem começa a aprender Python, encontra uma comunidade sempre disposta a ajudar e uma lista de discussão bem ativa.

Claro, todo mundo fala bem de Python. Todos dizem que Python é fácil, é simples, é multiplataforma, é alto nível, é isso, é aquilo.

O que ninguém fala é que Python é diferente!

Python é diferente de java, apesar de ter alguma coisa parecida com ela.
Python é diferente de PHP, de Perl, de Ruby, de Visual Basic, de C, de Pascal, de Cobol, de shell script, de bat, de PL/SQL...

Python é diferente porquê é outra linguagem.
Python é pythônica! Isso quer dizer que Python tem seu jeito próprio para resolver problemas. Da mesma forma que PHP é "Phpônica", Java é "Javânica", Pascal é "Pascalínica", Cobol é "Cobolônica"...

Python tem list comprehension e reflection! (Eu também tenho que estudar isso para saber do que se trata).
Python implementa características de programação funcional, que não é trivial nem intuitiva, apesar de ser mais simples! Acho que é por isso que no PEP #20 (The Zen of Python) tem a seguinte afirmação:
"There should be one-- and preferably only one --obvious way to do it. Although that way may not be obvious at first unless you're Dutch."
(Se não entendeu, leia em português.)

Quando conheci o Luciano Ramalho (não sabe quem é ele? Então comece a entrar no mundo Python brasileiro) , ele disse que normalmente quem programa em Python já programou em outras linguagens. (Ó eu aqui!). E disse também que quem vem para Python, fica!

Isso pode ser bom, por causa da experiência anterior. Mas pode ser ruim pelo mesmo motivo. Sempre trazemos costumes das experiências anteriores. No caso de linguagens de programação, isso pode ser fatal.

Dizem que Python é bom para quase tudo. Eu, particularmente, gosto muito de duas linguagens antigas: Cobol e Natural. São duas linguagens que nasceram no mainframe, focadas em aplicativos comerciais. Tipo estoque, faturamento, etc.

Eu, como trabalho com mainframe (sim, tela preta e letras verdes) há muito tempo, gosto dessas linguagens e elas são extremamente mais simples que as ondas do momento que sempre aparecem. Java? PHP? Perl? Delphi? São muito mais complicadas do que Cobol e Natural. Pode acreditar.

Dizem que o Python não tem delimitador de bloco. Dizem que Python tem sintaxe limpa. Dizem que é intuitiva. Para mim, isso é balela. Sintaxe limpa tem o Natural. Python tem a possibilidade de fazer coisas com menos linhas de código. Isso sim. Simplicidade é com o Natural. E é possível escrever pouco. É uma linguagem muito boa para sistemas online. E batch também, mas é um pouco lenta, apesar de haver os "religiosos" que dizem que ela tem o desempenho equivalente ou melhor do que o Cobol!

Se você olhar um programa escrito (bem escrito, é claro) em Cobol, nem precisa saber a linguagem. Basta saber um pouco de inglês que você já sabe o que o programa faz.

O que quero dizer com isso? Que Python é Python.
Na minha opinião, melhor para algumas coisas, pior para outras. Apenas, diferente.

Vale a pena aprendê-la, mas ela não é a única.

Leia também: Cada macaco no seu galho. Boa pedida!

Eu sou Vinicius Assef, um programador do século passado que gosta de Python, pratica Lean Development e acredita em Deus. Você pode me contactar por email ou twitter.

5 comentários:

  1. O link do Zen de Python em português mudou:

    http://pipeless.blogspot.com/2008/09/o-zen-de-python.html

    ResponderExcluir
  2. Discordo disso:
    """ PHP é "Phpônica", Java é "Javânica", Pascal é "Pascalínica", Cobol é "Cobolônica"... """

    ResponderExcluir
  3. - PHP é Perl perdido no meio de um HTML
    - Java é uma cebola
    - Pascal é engraçadinha
    - COBOL é um funcionário público

    ResponderExcluir
  4. Eu considero Python a melhor linguagem de Programação alem de ser facli Python
    da para desenvolver jogos softwares sites.

    Tem varios hackers que consideram Python a melhor de todas ate do que c/c++
    Vou aprender Python, roda ate em Android (baseado em Linux)

    Irei estudar é espero criar minha propria Linguagem,já estou criando meu So baseado em Linux no Susestudio!!!

    ResponderExcluir
  5. Bacana! Eu sou do tempo do Clipper Summer'87 e justamente aprendi a linguagem com os livros do Luciano Ramalho... Depois deixei de lado e fiquei só com manutenção de computadores. Agora com 45 anos, resolvi voltar aprender programação. Confesso que tentei aprender JDK, mais o Python é muito mais atrativo e uma antiga paixão. Bem, o desafio está lançado! Peço a torcida de todos. Deixo um forte abraço.

    ResponderExcluir

Marcadores