andrews medina

Análise de Código em Python

escrito em 31/01/2011

Análise (estática) de código é um termo utilizado pela análise feita fora do tempo execução de um código, verificando a sua qualidade.

Há várias formas de analisar um código, a sua sintaxe, verificar a ocorrência de elementos não utilizados, código duplicado e etc.

Vou listar aqui algumas ferramentas de análise de código para python, explicar o uso e instalação de cada uma delas.

pep8

Verificar se o código está seguindo as orientações do pep 8.

Instalação:

[sudo] pip install pep8

Uso:

pep8 /diretorio-do-meu-codigo

pylint

Analisa o código procurando por bugs ou por sinais de baixa qualidade. Como:

  • existência de docstring nos métodos
  • variáveis e atributos não definidos
  • pep8
  • métodos, modulos ou objetos importados não utilizados
  • verifica linhas similares

O pylint atribui uma nota ao seu código de acordo com o resultado do teste.

Instalação:

[sudo] pip install pylint

Uso:

pylint /diretorio-do-meu-modulo-python

pyflakes

Verifica se algum modulo ou objeto importado ou uma variável não estão sendo utilizado. Detecta também variávies não definidos.

Instalação:

[sudo] pip install pyflakes

Uso:

pyflakes /diretorio-do-meu-codigo

clonedigger

O objetivo do clonedigger é detectar códigos semelhantes.

Instalação:

[sudo] pip install clonedigger

Uso:

clonedigger /diretorio-do-meu-codigo

O clonedigger gera um arquivo chamado output.html mostrando todas as duplicações.

Bônus: http://pypants.org/

pypants é um site onde você cadastra seu projeto python e ele analisa a qualidade do seu projeto e da uma nota de acordo com o resultado.

Agora, uma vez como o código analisado, fica mais fácil saber o que refatorar para melhorar a qualidade do mesmo.

blog comments powered by Disqus