Assegure a qualidade do seu código Python – pep8

AGRADEÇA AO AUTOR COMPARTILHE!

Convenções de código! Já tive a oportunidade de escrever sobre elas no Profissionais TI. Benção ou maldição? Há quem goste, há quem ache uma perda de tempo…

Acredito muito que a organização e a qualidade do código são benéficas para qualquer projeto, principalmente para aqueles que possuem alta rotatividade de profissionais. Padrões de projetos, padrões estruturais e de escrita facilitam a “assimilação” do que já foi produzido, facilita a manutenção e “orienta” as novas produções.

Se você tem problemas em decorar convenções e boas práticas, não desanime! O Python possui algumas ferramentas “bacanudas” que vão te auxiliar a deixar o software mais próximo do “estado da arte”, seja garantindo as convenções de código, seja avaliando a qualidade do mesmo.

Python Enhancement Proposals

As “PEPs” (Python Enhancement Proposal) são documentos que geralmente abordam alguma nova funcionalidade da linguagem, propósitos, procedimentos ou ambiente. Em suma, são “guidelines” que te orientam num melhor uso da linguagem e suas funcionalidades, bem como podem ajudar em questões como arquitetura, ambiente ou processos de sua aplicação.

Para saber mais sobre PEPs, acesse a PEP 1 que é justamente um documento explicando o que são e o que fazem as Python Enhancement Proposals.

pep8

O pep8 é uma ferramenta simples (e muito eficaz) que analisa o seu código Python segundo as convenções de código descritas na PEP 8.

Vamos analisar o código do Django Brasil (você não sabia? O site é open source!), mais especificamente o arquivo models.py da app blog:

Como podemos ver, a ferramenta nos mostra a linha e coluna onde o problema foi encontrado, apresentando uma breve descrição da incoerência que estamos cometendo em relação às recomendações da PEP 8.

Para obter uma resposta mais “verbose“, podemos passar alguns parâmetros para o pep8:

Viu só?! Dessa forma podemos aprender sobre a PEP 8 enquanto “ferimos” as convenções de código em nossos projetos :P

Para finalizar, podemos contar as ocorrências de problemas com a PEP 8 em determinada região do projeto:

Nenhum problema muito grave de convenções de código na app blog do DjangoBrasil ;)

Confira: pep8 – Python style guide checker.

Referências

Nos próximos posts, vamos dar uma pincelada no pylint, pyflakes e clone digger.

Fonte: Klaus Laube

AGRADEÇA AO AUTOR COMPARTILHE!

Klaus Peter Laube

Mais artigos deste autor »

Tecnólogo em Análise e Desenvolvimento de Sistemas pelo Centro Universitário de Jaraguá do Sul (UNERJ). Desenvolvedor Web de longa data, apaixonado por Python e defensor dos padrões Web. Escreve quando pode no http://www.klauslaube.com.br.


Deixe seu comentário

Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">