【问题标题】:Is the Cyclomatic complexity value shown by Visual studio ILCyclomatic complexity是 Visual Studio ILCyclomatic 复杂度显示的圈复杂度值
【发布时间】:2014-11-04 12:11:28
【问题描述】:

我使用 Visual Studio 2012 和 NDepend 对我的解决方案进行了代码分析

对于方法 MethodA Visual Studio 显示复杂度为 105,Ndepend 显示为 12。但是 NDepend 中的 ILCyclomatic 复杂度为 112。 这是否意味着 Visual Studio 显示的复杂性是 ILCyclomatic 复杂性,或者是否需要进行任何配置更改。 还有我相信哪一个:(

【问题讨论】:

  • 是的,它正在分析 IL,而不是 C# 源代码。 (参见“代码行”下的注释here
  • @MatthewWatson。哦,那么该值不能用于确定单位权利的维护工作
  • 是的 - 例如,您肯定会注意到在具有大 switch 语句的代码中存在一些困难。
  • @MatthewWatson 感谢您的回复。

标签: c# visual-studio-2012 ndepend cyclomatic-complexity


【解决方案1】:

请参阅 NDepend 源代码循环复杂度 (CC) 定义 here

请参阅 NDepend IL CC 定义here。 Visual Studio CC 大致相似(基于 IL 代码)。

相信哪一个?源代码 CC(如果可用),因为 IL CC(VS 和 NDepend 的)偏向于流行的(但复杂的)代码构造,包括 LINQ 查询、枚举器、lambda 表达式、匿名方法和类型......

关于 NDepend,如果在分析时您同时拥有 PDB 文件和 C# 源代码文件,则可以使用 Source Code CC。有关此here 的更多信息。

【讨论】:

  • 感谢您的回复。正如您所说,当取消引用动态对象时,发现在 Visual Studio 中会出现复杂性
猜你喜欢
  • 2019-03-08
  • 1970-01-01
  • 2010-10-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-29
  • 2020-10-03
相关资源
最近更新 更多