What is cyclomatic complexity in the context of code analysis?
Questão
What is cyclomatic complexity in the context of code analysis?
Alternativas
A measure of the number of linearly independent paths through a program's source code
A technique for optimizing function performance
A metric for determining the total lines of code in a file
A method for tracking code dependencies
Explicação
A complexidade ciclomática (cyclomatic complexity), proposta por McCabe, é uma métrica de análise de código que quantifica quantos caminhos de execução linearmente independentes existem em um programa. Na prática, ela cresce conforme aumentam as estruturas de controle que criam desvios (por exemplo, if/else, switch/case, laços for/while, operadores lógicos que geram ramificações etc.).
Interpretação comum:
- Valor maior → mais ramificações → código mais difícil de testar e manter.
- Aproxima o número mínimo de casos de teste necessários para cobrir todos os caminhos independentes.
Por isso, a alternativa correta é a que define a métrica como o número de caminhos linearmente independentes no código-fonte.