有一种思想流派认为你应该有一个单一的入口点和一个退出点.如果你有更多,你应该重构代码更清楚.
我不赞成这个想法,并经常使用保护条款,如下所示:
public void DoSomethingOnMales(Person p) { if (p.Sex != Sex.Male) return; .... }
当然,你仍然应该尝试限制返回的数量,因为它们中的太多,虽然本身并不坏,但这是一个很好的迹象,表明你有一个复杂的方法,应该尝试简化它.
有一种思想流派认为你应该有一个单一的入口点和一个退出点.如果你有更多,你应该重构代码更清楚.
我不赞成这个想法,并经常使用保护条款,如下所示:
public void DoSomethingOnMales(Person p) { if (p.Sex != Sex.Male) return; .... }
当然,你仍然应该尝试限制返回的数量,因为它们中的太多,虽然本身并不坏,但这是一个很好的迹象,表明你有一个复杂的方法,应该尝试简化它.