sourcemaking-translate

https://sourcemaking.com/ 翻译计划

View the Project on GitHub Arthars/sourcemaking-translate

原文

https://sourcemaking.com/refactoring/smells/long-method

迹象和症状

一个方法包含了太多行代码。通常来说,对于任何长于10行的方法,我们都应该问问自己是否能优化它。
long method

问题原因

就像是自己的私房钱一样,大家总喜欢往方法里面添加一些内容,但是都不会取出任何内容。因为写代码比认真的阅读代码更容易,这种“气味”会持续到其变成丑陋且巨大的怪兽才会被注意到。

治疗方法

根据经验,如果你感觉你需要对一个方法内的代码添加注释,更好的方法是把代码放到一个新的方法内。 如果一行代码也需要注释,它也可以被提取成另外的方法。而且如果方法有一个描述性的名字,大家都可以不关注它是怎么实现的。

long method

结果

性能

许多人对于方法数量的增加会损害性能有所疑惑。 在绝大多数情况下,其对性能的影响微乎其微,甚至都不值得担心。 另外,现在你拥有清晰易懂的代码,那么在真正需要的时候,你可以更好的进行重构来提高性能。这才是正确的做法。