Visite também: Currículo ·  Efetividade BR-Mac

O que é LinuxDownload LinuxApostila LinuxEnviar notícia


Pense como um Pythonista

Enviado por Klaus Laube (faleΘprofissionaisti·com·br):

“Python é uma linguagem diferente das demais. Todo desenvolvedor que “migra” para o Python percebe isso.
O grande porém disso tudo é que “não programa-se em Python como em outras linguagens”. Como já disse antes: “O Python é um canivete suíço”. Você não vai solucionar um problema em Java da mesma forma que soluciona em Python (o que vem acontecendo em alguns projetos opensource), pois Python tem uma regra fundamental que geralmente é subestimada por programadores de outras linguagens: clareza. (…)” [referência: profissionaisti.com.br]

• Publicado por Augusto Campos em 2009-06-16

Comentários dos leitores

Os comentários são responsabilidade de seus autores, e não são analisados ou aprovados pelo BR-Linux. Leia os Termos de uso do BR-Linux.

    Katsutoshi (usuário não registrado) em 16/06/2009 às 4:28 pm

    Tenho a maior vontade de aprender Python, mas meu receio é que na faculdade temos programação com uso de Java. Daí eu fico meio confuso em como começar a aprender python, já que algumas coisas em python nao sao feitas como em java.

    Fellype (usuário não registrado) em 16/06/2009 às 4:56 pm

    Este negócio de as universidades darem cursos de programação em apenas uma linguagem realmente traz alguns problemas. No meu caso, eu que não sou da área de informática, tive apenas um curso (básico) de programação em C. Hoje, faço tudo que preciso em C (e com um pouco de shell script). Porém, em alguns testes que andei fazendo com o Python, vi que seria muito mais fácil fazer meus programas nesta linguagem. O problema é que não tenho tempo, no momento, para aprender outra linguagem e realizar minhas tarefas.
    Pela minha experiência (mesmo que pouca) em programação, creio que seria interessante se os cursos básicos de programação fossem ministrados em duas linguagens: Python e alguma outra.
    Só o fato de haver necessidade de identar coretamente os códigos em Python já justificaria o uso desta linguagem no aprendizado inicial.

    Paul (usuário não registrado) em 16/06/2009 às 7:29 pm

    Fiz USP e as matérias de programação ensinaram: Pascal, C, depois Java e Python, além de várias matérias sobre estruturas de dados, bancos relacionais, etc.

    Considero extremamente importante, saber C e estruturas de dados, para saber porque em Java ou Python strings são lerdas.

    Também serve pra saber que coisas como “Pense como um Pythonista” são típicas de quem aprendeu apenas uma linguagem e acha que linguagens são como times de futebol.

    linus (usuário não registrado) em 16/06/2009 às 10:03 pm

    Talk less. Code more.

    Eduardo Rolim (usuário não registrado) em 16/06/2009 às 11:30 pm

    Eu sou da opinião que se deveria ensinar as lógicas independente de programação e só depois aplicar esse conhecimento sob a forma de programação e estudo de algoritmos.

    Comigo funcionou muito bem assim, tanto que no aprendizado de novas linguagens, o maior problema é só lidar com aspectos relativos à sintaxe da linguagem e uso dos seus recursos.

    joao (usuário não registrado) em 16/06/2009 às 11:42 pm

    Concordo totalmente com o Paul, típica frase de fanboy de linguagem de programação.

    k (usuário não registrado) em 17/06/2009 às 12:00 am

    Tá, e comofas pra pensar como um Pythonista?

    Also, lol @ não programa-se (lrn2ênclise)

    foobob (usuário não registrado) em 17/06/2009 às 1:28 am

    Programador com medo de aprender novas linguagens e conceitos deveria mudar de ramo — ou virar um dinossauro e encarar uma eventual extinção.

    Klaus Laube (usuário não registrado) em 17/06/2009 às 8:12 am

    Olá pessoas!
    Lendo os comentários do Paul, Joao e Foobob… acho que vocês não entenderam o “sentido” da coisa.
    Tenho conhecimento em C, Object Pascal (Delphi… blergh!), Java, PHP, Python (Javascript conta?!). Mas profissionalmente utilizo mesmo PHP, Python e Javascript (conta?!).
    A idéia do post foi passar que para você atingir o êxito que pessoas experientes em Python atingem, você deve ter em mente algumas coisas que não são tão válidas assim para outras linguagens.
    Por exemplo, em PHP… você sai debulhando código e muito “cursinho Wallita” forma programadores que nem ao menos entendem o que são classes e objetos ou o porque das “strings serem tão lerdas”.
    Foi isto que tentei passar… um pouco da “filosofia em se programar em Python”. Entenderam agora?

    cristo (usuário não registrado) em 17/06/2009 às 8:37 am

    Eu até acho Python legal, mas o custume de manter dez máquinas virtuais acaba que prejudicando muito minhas tarefas, por essa razao evito coisas em Python.

    Clareza pode existir em qualquer linguagem, a diferença é que Python lhe obriga a isso, a idéia da identação como fator de organização até que é interessante, pena que a mesma funciona como uma faca de dois gumes, já que mesmo organizando o código, caso ocorra algum evento de o código perder toda a identação será neste momento que toda a organização vai para o espaço, outro problema é referente a tabulação que tem de ser configurada em cada editor para funcionar, caso contrário o código não funciona.

    No mais é uma boa linguagem, mas em se tratando de tecnologia JMV/.Net/Mono estão bem mais evoluídos que Python, além que gerenciamento de memória deles também é mais organizado, na minha máquina eu tenho duas máquinas virtuais de Python abertas ocupando memória.

    Leonardo L. (usuário não registrado) em 18/06/2009 às 12:28 am

    Dizem que a crítica a uma idéia pode ser uma forma de amparo ao raciocínio alheio – que ocorre quando você enxerga um ponto falho no raciocínio lógico de alguém, e deseja alertar a pessoa. Ou seja, é uma forma de ajudar a construir um conhecimento sólido.

    Dito isto, vamos por partes:

    @Klaus, a sua intenção pode ter sido nobre, mas concordo com o comentário dos colegas: o título do artigo e a chamada da notícia são fracas e tendenciosas, e quem as lê tem a nítida impressão que o autor só sabe programar em Python – ou acha que esta é a oitava maravilha no quesito “linguagem de programação”.

    O artigo pode ser ótimo, mas a impressão que fica é a de que Python “resolverá todos os problemas melhor e mais rapidamente”.

    Particularmente, não costumo utilizar linguagens dinamicamente tipadas pelo simples princípio da verificabilidade. E qualquer um que desenvolva software para ser realmente usado sabe a importância deste item.

    @Paul, mais importante que saber C é conhecer linguagem assembly de uma ou mais arquiteturas, já que este dá contato direto com uma linguagem da máquina, e faz com que o programador entenda como o software dele se traduz em instruções propriamente ditas.

    C, cá entre nós, é uma linguagem basicamente arcaica, que só deveria ser usada em situações onde nem assembly nem linguagens de mais alto nível – como C++ ou D – atendem aos requisitos.

    E é isso.

    Lauro César (usuário não registrado) em 18/06/2009 às 5:56 pm

    Particularmente, não costumo utilizar linguagens dinamicamente tipadas pelo simples princípio da verificabilidade. E qualquer um que desenvolva software para ser realmente usado sabe a importância deste item.

    Desculpe minha ignorância, mas o que é o “princípio da verificabilidade”?

    quanta baboseira nesses comentários

    parabéns pelo texto, cara!
    concordo contigo, aprender python me trouxe muitos bons frutos em outras linguagens…
    abraço

Este post é antigo (2009-06-16) e foi arquivado. O envio de novos comentários a este post já expirou.