Voltar ao glossario
Metricas e Arquitetura

Complexidade de Código

Uma medida quantitativa de quão difícil é entender, testar e manter o código, baseada em fatores como ramificação, profundidade de aninhamento e dependências.

Definicao

A complexidade de código é medida através de várias métricas: Complexidade Ciclomática (número de caminhos independentes), Complexidade Cognitiva (medida de compreensibilidade do Sonar), métricas Halstead (baseadas em operadores e operandos), e Linhas de Código. Alta complexidade correlaciona com maiores taxas de defeitos e tempos de desenvolvimento mais longos.

Por que e importante

Estudos mostram que funções com complexidade ciclomática >10 têm 4x mais probabilidade de ter bugs. Código complexo é difícil de testar (requer mais casos de teste), revisar (fácil perder problemas) e modificar (alto risco de regressão).

Exemplo

Uma função com 15 branches if/else, 4 loops aninhados e 3 blocos try/catch tem alta complexidade. Refatorar em funções menores e focadas com responsabilidades claras reduz a complexidade.

Termos relacionados

code complexitycomplexity metricsMcCabe complexitycognitive complexityreduce complexity

Automatize Code Review com diffray

Sistema de IA multi-agente para code review. Encontra bugs, vulnerabilidades de seguranca e problemas de arquitetura automaticamente.