我目前有一个函数可以使用一个对象创建一个stringbuilder变量。使用多个函数来构建stringbuilder变量
我遇到的问题是功能现在非常长,我开始意识到我可以轻松地将其分解为多个功能,以提高可读性和可维护性。是否有任何理由不将它们分解成单独的功能?会有性能提升还是相反?
这是我使用的当前stringbuilder函数的一个较小版本(因为它大大超过300多行代码)。正如你所看到的,我可以根据每一行输入来分割功能:
private static StringBuilder GetObjectData(Object obj)
{
StringBuilder sb = new StringBuilder();
sb.AppendLine(("TempClass;" +
obj.TempClass.TempValue +
obj.TempClass.TempValue1 +
obj.TempClass.TempValue2 +
obj.TempClass.TempValue3 +
obj.TempClass.TempValue4 +
obj.TempClass.TempValue5 +
obj.TempClass.TempValue6 +
obj.TempClass.TempValue7 +
obj.TempClass.TempValue8));
sb.AppendLine(("TempClass2; +
obj.TempClass2.TempValue));
sb.AppendLine(("TempClass3;" +
obj.TempClass3.TempValue));
if (obj.TempClass3.TempValue != null && obj.TempClass3.TempValue1 != null)
{
sb.AppendLine(("TempClass3;" +
obj.TempClass3.TempValue +
obj.TempClass3.TempValue1));
}
sb.AppendLine(("TempClass4;" +
obj.TempClass4.TempValue));
foreach (string element in obj.TempClass5.TempValue)
{
sb.AppendLine(("TempClass5;" + element));
}
return sb;
}
任何输入都非常感谢!
你可能在http://codereview.stackexchange.com/有更好的运气了 – Brandon
由于额外的函数调用,消耗的时间可能会有轻微(非常轻微的)增加。但是,与你所做的处理相比,它是非常小的,它是无关紧要的。可读性和可维护性应始终是第一个倾向。仅在出现问题时才担心性能。 – hatchet
你调用这个函数多少次?如果它不是百万,那么没有太大的区别。 –