我曾与一位同事讨论过如何中断一条return
语句以及该语句在两行中计算返回值。
例如
private string GetFormattedValue()
{
var formattedString = format != null ? string.Format(format, value) : value.ToString();
return formattedString;
}
代替
private string GetFormattedValue()
{
return format != null ? string.Format(format, value) : value.ToString();
}
在代码方面,我在第一个变量中看不到任何值。对我来说,后者更清晰,尤其是对于较短的方法。他的论点是,前一种变体更易于调试-这是一个很小的优点,因为当由于断点而停止执行时,VisualStudio允许我们对语句进行非常详细的检查。
我的问题是,是否仍然需要编写不太清晰的代码,只是为了使调试一目了然?拆分计算和语句后,该变体还有其他参数return
吗?
private string GetFormattedValue() => string.Format(format ?? "{0}", value);