Sonar -LOC&循环复杂性

时间:2013-10-04 09:52:38

标签: sonarqube metrics cyclomatic-complexity lines-of-code

Sonar如何计算软件指标,尤其是LOC和圈复杂度?它是否使用任何特定工具?如果是,请同时提供姓名。

2 个答案:

答案 0 :(得分:1)

对于每种支持的语言,“squid”插件用于解析源代码并确定一些基本指标,如LOC和复杂性。如何计算复杂性因插件而异。

例如,这是JavaScript插件的源代码文件:https://github.com/SonarCommunity/sonar-javascript/tree/master/javascript-squid/src/main/java/org/sonar/javascript/metrics 在这种情况下,使用一个非常简单的公式在插件本身中计算复杂性。

以下是C#支持的同一组类:https://github.com/SonarCommunity/sonar-dotnet/tree/master/sonar/csharp/sonar-csharp-squid/csharp-squid/src/main/java/com/sonar/csharp/squid/metric

但是,任何插件都可以创建指标,因此如果您想补充数据或以不同的方式显示数据,您可以编写自己的插件。

另请参阅.Net插件维护者之一Fabrice对此问题(关于创建新插件)的回答:SonarQube - help in creating a new language plugin

答案 1 :(得分:0)