圣诞大减价开始了!

长方法

迹象和症状

方法包含太多代码行。一般来说,任何超过十行的方法都应该让你开始问问题。

问题的原因

就像加利福尼亚旅馆一样,总是有一些东西被添加到一个方法中,但没有任何东西被删除。由于编写代码比阅读代码更容易,这种“气味”一直没有被注意到,直到方法变成一个丑陋的、超大的野兽。

从心理上讲,创建一个新方法通常比在现有方法上添加新方法更难:“但它只有两行,为它创建一个完整的方法是没有用的……”这就意味着又加了一行,又加了一行,产生了一大堆意大利面条般的代码。

治疗

根据经验,如果您觉得需要对方法中的某些内容进行注释,您应该将这段代码放到一个新方法中。如果需要解释,即使是单行也可以而且应该被分割成一个单独的方法。如果方法有一个描述性的名称,那么没有人需要查看代码来了解它是做什么的。

回报

  • 在所有面向对象的代码类型中,具有短方法的类生存时间最长。方法或函数越长,就越难理解和维护。

  • 此外,长方法为不必要的重复代码提供了完美的隐藏场所。

性能

方法数量的增加会像许多人声称的那样损害性能吗?在几乎所有情况下,影响都是可以忽略不计的,甚至不值得担心。

此外,现在您有了清晰易懂的代码,您更有可能找到真正有效的方法来重构代码,并在需要时获得真正的性能提升。

Baidu
map