En fait, non. Coupons un peu les cheveux en quatre, ça ne prend pas longtemps de s ́amuser un peu. ;-)
Le raisonnement suivant suit la description de la page en anglais de Wikipedia, qui est plus fournie que la page en français sur la complexité cyclomatique.
Soit on considère que les deux return représentent deux points de sortie distincts, et on a le graphe suivant:
[^] # Re: Je pense que tu confonds les cas où c'est nécessaire
Posté par ymorin . En réponse au journal Genèse d'un journal. Évalué à 6.
En fait, non. Coupons un peu les cheveux en quatre, ça ne prend pas longtemps de s ́amuser un peu. ;-)
Le raisonnement suivant suit la description de la page en anglais de Wikipedia, qui est plus fournie que la page en français sur la complexité cyclomatique.
Soit on considère que les deux
returnreprésentent deux points de sortie distincts, et on a le graphe suivant:Dans ce cas, la formule donne:
M = π - s + 2, avec :π = 2points de décision:foo?etbar?s = 2points de sortie:X1etX2M = 2 - 2 + 2 = 2Maintenant, si on considère les deux
returncomme étant un seul et unique point de sortie, le graphe devient:Et la formule donne :
π = 2points de décision:foo?etbar?s = 1point de sortie:XM = 2 - 1 + 2 = 3Donc, pas 4. Et les mouches ont mal, maintenant. ;-)
Hop,
Moi.