Métricas de código Cálculo no Visual Studio
-
19-09-2019 - |
Pergunta
Qual é o intervalo de pontuação preferido para o cálculo das métricas de código para o seguinte
- Índice de Manutenção
- Complexidade ciclomática
- Profundidade de herança
- Acoplamento da classe
Solução
Os valores teoricamente ótimos são:
- Índice de Manutenção: 100. Valores mais altos indicam melhor manutenção.
- Complexidade ciclomática: 1. O número de caminhos diferentes que o código pode seguir.
- Profundidade de herança: 1. O número de definições de classe acima desta na árvore de herança, sem incluir interfaces.
- Acoplamento da classe: 0. Número de outras entidades em que essa entidade depende.
Não há intervalos "bons" difíceis e rápidos, embora seja possível fazer algumas declarações gerais.
- Ter alta complexidade ciclomática por método sugere que um método está ficando muito complicado.
- Ter uma profundidade de herança mais de 3 ou 4 (de suas próprias classes, não da estrutura) é um sinal de problema de que você pode estar representando desnecessariamente relacionamentos abstratos que realmente não estão no domínio do seu software.
- O acoplamento de classe baixa é em geral melhor, mas às vezes é inevitável. Na medida do possível, você deve definitivamente minimizar a dependência entre os espaços para nome, pois há muito menos motivo para dependências aqui.
Um projeto só poderia atingir todos os quatro valores simultaneamente, essencialmente não fazendo nada e sendo inútil: o software que não faz nada e depende de nada é certamente sustentável, mas não um bom uso de dólares de clientes.
Portanto, toda a complexidade é uma troca: adicional o chamado inerente A complexidade codifica mais sofisticação no programa, permitindo expandir o conjunto de recursos. O que você gostaria de evitar é acidental Complexidade introduzida por uma implementação ruim ou deficiente.