SonarQube使用什么样的复杂性?

时间:2017-03-05 17:11:18

标签: sonarqube metrics

过去,声纳使用了圈复杂性。在他们的网站上,他们提到了认知复杂性。但在他们的文档中,只有"复杂性"测量但具有相同的缺点"圈出的一个(例如,对于一个开关中的每个CASE增加1)。 那么现在使用哪一个呢?

3 个答案:

答案 0 :(得分:1)

"复杂性"目前正在计算的指标是Cyclomatic Complexity。

值得注意的是,最近的Code Analyzer版本计算出正确的Cyclomatic Complexity值 - 与之前的Cyclomatic和Essential Complexities的组合相比。

认知复杂度指标在撰写本文时尚未提供,但应该可以使用"很快就会出现#34;。

<强>更新 认知复杂性目前在S​​onarJava,SonarJS,SonarC#,SonarSwift和SonarC-Family(C / C ++,Objective-C)中作为指标提供

答案 1 :(得分:0)

<强>更新 目前它是认知复杂性

答案 2 :(得分:0)

你可以在这里阅读: https://blog.sonarsource.com/cognitive-complexity-because-testability-understandability/

Java,JavaScript,C#和C / C ++ / Objective-C的认知复杂性。

据我所知(此刻)其他代码语言插件实现了Cyclomatic Complexity,因为它们没有迁移到新的计算方法。