Quali sono le categorie di complessità ciclomatica? Per esempio:
1-5: facile da mantenere
6-10: difficile
11-15: molto difficile
20+: avvicinamento impossibile
Per anni ormai, ho assunto il presupposto che il limite fosse 10. E qualsiasi cosa oltre a ciò è male. Sto analizzando una soluzione e sto cercando di determinare la qualità del codice. Certamente la complessità ciclomatica non è l'unica misura, ma può aiutare. Esistono metodi con una complessità ciclomatica di oltre 200. So che è terribile, ma sono curioso di conoscere le gamme inferiori, come nel mio esempio sopra.
Ho trovato questo :
I suddetti valori di riferimento di Carnegie Mellon definiscono quattro intervalli approssimativi per i valori di complessità ciclomatica:
- i metodi tra 1 e 10 sono considerati semplici e di facile comprensione
- valori compresi tra 10 e 20 indicano un codice più complesso, che può essere ancora comprensibile; tuttavia i test diventano più difficili a causa del maggior numero di possibili rami che il codice può accettare
- i valori di 20 e superiori sono tipici del codice con un numero molto elevato di potenziali percorsi di esecuzione e possono essere colti e testati solo con grande difficoltà e fatica
- i metodi che vanno ancora più in alto, ad es.> 50, sono certamente irraggiungibili
Quando si eseguono metriche di codice per una soluzione, i risultati mostrano il verde per qualsiasi valore inferiore a 25. Non sono d'accordo con questo, ma speravo di ottenere altri input.
Esiste un elenco di range generalmente accettato per la complessità ciclomatica?