到底要不要拆分函数
问题描述:
怎样的函数才算是有意义的函数?
比如这样的函数有没有意义?
(1)只被调用一次的函数
(2)只有一句实现内容的函数
(3)函数很多的参数
比如一个函数,有很多局部变量,如果要拆成多个函数,那么每个函数都要传递这些局部变量,会造成函数的参数很多。
在拆分函数这个问题上,我们要考虑我们在开发过程中,是以写为主?还是以读为主?
Uncle Bob刚好在这方便做过一些统计,他发现,即使是在开发过程中,大部分时间也是在读代码的。
那么更何况后期维护,即使是修改代码,也是要以读懂代码为基础的。
很显然,我们的开发是以读为主的,因此,便于阅读的代码就是有意义的代码。适当地牺牲“写的方便性”来实现“读的方便性”是有必要的。