# 12 métricas de qualidade de código que importam de verdade

> As 12 métricas de qualidade de código que importam de verdade incluem complexidade ciclomática, acoplamento, coesão, duplicação, cobertura de testes, manutenibilidade, profundidade de herança, tamanho de função, número de parâmetros, fan-out, fan-in e tempo de resposta. Cada métrica revela aspectos específicos da saúde do software, como legibilidade, testabilidade e facilidade de manutenção.

*Blog Sem Juízo · Destaques · 06 de julho de 2026 · Babi Cordeiro*

Métrica de qualidade de código não é só número bonito. A gente separou as 12 que realmente importam, da complexidade ciclomática ao acoplamento, e explicou cada uma como se fosse fofoca de corredor. Senta que lá vem história.

Métrica de qualidade de código não é moda, é o termômetro que diz se seu software vai aguentar o tranco ou se vai dar PT na primeira alteração. A gente reuniu as 12 que realmente importam, sem firula. Bora?

## 1. Complexidade Ciclomática

Ela mede quantos caminhos lógicos existem dentro de uma função. Quanto maior, mais difícil de testar e entender. Um método com complexidade acima de 10 já merece um olhar mais carinhoso. Exemplo: aquele if aninhado dentro de for dentro de switch que você jura que vai refatorar um dia.

## 2. Linhas de Código por Método (LOC)

Funções de 200 linhas são um clássico. O ideal é manter cada método com menos de 30 linhas. A regra é simples: se você precisa rolar a tela pra entender o que faz, já passou do ponto. Dica: extrair blocos repetidos vira um novo método, e o LOC cai naturalmente.

## 3. Acoplamento entre Classes (CBO - Coupling Between Objects)

Mostra quantas classes uma classe específica depende. Acoplamento alto = código frágil. Uma classe que conversa com 10 outras vai quebrar em 10 lugares quando algo mudar. O segredo é manter o CBO baixo, tipo aquele amigo que não se mete em fofoca alheia.

## 4. Coesão (LCOM - Lack of Cohesion of Methods)

Coesão mede o quanto os métodos de uma classe estão focados em uma única responsabilidade. LCOM alto indica que a classe faz de tudo, uma bagunça. O ideal é cada classe ter um propósito claro, como cada setor de uma cozinha: um lugar pra cortar, outro pra cozinhar.

## 5. Cobertura de Testes (Code Coverage)

Não adianta ter 80% de cobertura se os testes só passam por código fácil. O importante é cobrir os caminhos críticos, especialmente os de erro. Um sistema com 60% de cobertura nas bordas vale mais que 90% só nos felizes.

## 6. Duplicação de Código (Code Duplication)

Copiar e colar é tentador, mas cada bloco duplicado vira dois pontos de manutenção. Ferramentas como SonarQube detectam repetições. Um código com menos de 5% de duplicação é considerado limpo. Se tá acima, hora de extrair pra um método compartilhado.

## 7. Dívida Técnica (Technical Debt)

Representa o esforço extra pra corrigir gambiarras acumuladas. É medida em horas ou dias. Um projeto saudável mantém a dívida abaixo de 5% do tempo total de desenvolvimento. Se passou disso, o juro composto come a produtividade.

## 8. Code Churn

Mede quantas linhas de código são alteradas, adicionadas ou removidas em um período. Churn alto (mais de 30% do código modificado no mês) indica instabilidade. Pode ser sinal de requisitos mal definidos ou refatoração descontrolada.

## 9. Profundidade de Herança (DIT - Depth of Inheritance Tree)

Quanto mais fundo na árvore de herança, mais difícil entender o comportamento real. Uma classe que herda de 3 níveis já começa a ficar complicada. Prefira composição a herança, o código fica mais explícito.

## 10. Número de Parâmetros

Métodos com mais de 3 parâmetros viram uma sopa de letrinhas. Se você precisa passar 5 argumentos, provavelmente falta uma classe de parâmetro. Código limpo pede no máximo 3, e olhe lá.

## 11. Taxa de Falhas (Failure Rate)

Quantas vezes um módulo específico quebra em produção? Uma taxa acima de 1 falha a cada 100 execuções merece investigação. É o tipo de métrica que não mente: se um trecho cai sempre, ele é o elo fraco.

## 12. Tempo de Compilação

Compilação lenta (acima de 5 minutos) afeta o ciclo de feedback. Cada segundo de espera é um convite pra distração. Se o build demora, vale modularizar ou usar compilação incremental.

## FAQ

### Quais são as métricas de qualidade de código?

As principais incluem complexidade ciclomática, linhas de código por método, acoplamento, coesão, cobertura de testes, duplicação, dívida técnica, code churn, profundidade de herança, número de parâmetros, taxa de falhas e tempo de compilação.

### Quais são os 7 principais indicadores de qualidade?

Complexidade ciclomática, linhas de código por método, acoplamento, coesão, cobertura de testes, duplicação e dívida técnica são os 7 mais citados em boas práticas de engenharia de software.

### O que são métricas de qualidade?

São medidas quantitativas que avaliam atributos do código, como legibilidade, manutenibilidade, confiabilidade e eficiência. Elas ajudam equipes a identificar pontos de melhoria e evitar retrabalho.

### Quais são as métricas de avaliação de qualidade?

Além das citadas, métricas como densidade de defeitos, tempo médio de reparo, e satisfação do usuário complementam a avaliação. O foco varia conforme o contexto do projeto.

### Como medir qualidade de código na prática?

Use ferramentas como SonarQube, CodeClimate ou ESLint com regras customizadas. Integre a análise no pipeline de CI/CD para receber feedback automático a cada commit.

### Qual métrica é mais importante para começar?

Comece pela complexidade ciclomática e pela duplicação de código. Elas são fáceis de medir e têm impacto direto na manutenibilidade. Depois, avance para acoplamento e cobertura de testes.

---

Fonte (canonical): https://blogsemjuizo.com.br/destaques/12-metricas-de-qualidade-de-codigo-que-importam-de-verdade/
