Pio*_*rak 6 c# code-metrics visual-studio-2012
使用Visual Studio计算度量标准.
第一种方法有CC = 4
private IEnumerable<string> GetRows(DataTable dt, string columnDelimiter)
{
return from DataRow row in dt.Rows
select string.Join(columnDelimiter, row.ItemArray.Select(k => k.ToString()));
}
Run Code Online (Sandbox Code Playgroud)
第二种方法有CC = 5.
private IEnumerable<string> GetRowsForeach(DataTable dt, string columnDelimiter)
{
var rows = new List<string>();
foreach (DataRow row in dt.Rows)
{
var rowString = string.Join(columnDelimiter, row.ItemArray.Select(k => k.ToString()));
rows.Add(rowString);
}
return rows;
}
Run Code Online (Sandbox Code Playgroud)
我会说第一种方法应该有CC = 1而第二种方法可能是CC = 1或者可能是2(了解最终条件的情况.但我永远不会说他们的CC是如此之高.我有什么误解?
这是一个不完美的工具。它看到 IL,即由 C# 编译器生成的代码。它看不到您的代码。C# 中有大量语法糖,旨在使代码易于理解,但代码生成的冰山在水线以下。查询理解当然符合这种模式。
仅将 CC 用作指导,切勿让它设定规则,也绝不让它限制您的风格。你的大脑胜过任何工具。
| 归档时间: |
|
| 查看次数: |
827 次 |
| 最近记录: |