Domanda

Di recente mi sono imbattuto Complessità ciclomatica E mi piacerebbe provare a capirlo meglio.

Quali sono alcuni esempi di codifica pratica dei diversi fattori che vanno nel calcolo della complessità? In particolare, per l'equazione di Wikipedia di M = E − N + 2P, Voglio capire meglio cosa significa ciascuno dei seguenti termini:

  • E = il numero di bordi del grafico
  • N = il numero di nodi del grafico
  • P = il numero di componenti collegati

Sospetto che ne sia E o N può essere il numero di punti decisionali (Se, altrimenti se, per, foreach, ecc.) In un blocco di codice, ma non sono sicuro di quale sia o cosa significa l'altro. Lo sto anche indovinando P Si riferisce alle chiamate di funzione e alle istanziazioni di classe, ma non esiste una definizione chiara data che posso vedere. Se qualcuno potesse gettare un po 'più di luce con alcuni esempi di codice chiari di ciascuno, sarebbe aiutato.

Come follow-up, la complessità ciclomatica è direttamente correlata al numero di test unitari necessari per il 100% Copertura del percorso? Ad esempio, un metodo con una complessità di 4 indica che sono necessari 4 test unitari per coprire quel metodo?

Infine, le espressioni regolari influenzano la complessità ciclomatica e, in tal caso, come?

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top