2010-12-16 201 views
0

Le code de PearSniffer semble venir avec un Sniff Cyclomatic Complexity (CyclomaticComplexitySniff.php). Est-ce que quelqu'un sait comment l'utiliser? Je voudrais calculer la complexité du code que j'analyse. Je voudrais utiliser la norme de codage Zend, mais peu importe la norme que j'utilise, je ne vois pas d'informations de complexité en sortie.Pear CodeSniffer Cyclomatic Complexity

Si quelqu'un a des conseils à ce sujet, s'il vous plaît faites le moi savoir.

Merci.

Répondre

5

j'ai réussi à le faire fonctionner en utilisant la commande suivante:

phpcs <dir|file> -p -s 
    --sniffs=Generic.Metrics.CyclomaticComplexity --standard=Squiz 

Si vous voulez voir la complexité cyclomatique pour toutes les fonctions au lieu de seulement ceux qui dépassent le seuil par défaut, vous devez définir la valeur de complexité à 0 dans le fichier "PEAR \ PHP \ codesniffer \ normes \ Squiz \ ruleset.xml":

<rule ref="Generic.Metrics.CyclomaticComplexity"> 
    <properties> 
    <property name="complexity" value="0"/> 
+0

j'ai trouvé les paramètres par défaut (avertissement de complexité> 10, erreur de complexité> 20) être remarquablement utile. Ma première réaction a toujours été "Mais ...!" quand j'ai reçu un avertissement/une erreur de ce reniflement, mais je trouve invariablement que mon code est plus propre quand je passe du temps à trouver comment refactoriser le code jusqu'à ce qu'il ne "sente plus". – Peter