我喜欢return
每种方法只有一个语句的想法.
你在这种情况下做了什么?
public static string ChopText(string Text) { if (String.IsNullOrEmpty(Text)) { // return here ????? } }
我能想到的唯一选择是设置一个标志,然后检查标志.
问题是,我不喜欢有超过一页的巨大if语句. 由于这个原因,我也看到了丑陋的嵌套if语句.
用guard子句替换嵌套的条件是可以的.
坦率地说,像这样的情况是过于严格的规则是坏的.
这样的规则就是让代码更具可读性和可维护性,因此当它们使代码更难阅读时,应该忽略它们.
这并不意味着应该完全放弃规则,因为大多数时候它确实使代码更具可读性.
尝试每个函数只返回一个代码的代码要复杂得多.它通常是if-thens和作业的老鼠巢.我挑战你看看那种代码,并知道总是从那些不同的路径返回正确的值.没门.
话虽如此,大型函数表明您可能需要将代码重构为更简单的函数.
我个人认为
public static string ChopText(string Text)) { if(String.IsNullOrEmpty(Text) return Text; ... }
如果你不喜欢那些,如果它变得越来越大,那就完全没问题.