一直以来,我觉得写代码或者写程序就是把众多函数有机地结合起来,我认为函数的好坏很大程度上可以体现代码的好坏.
小程序可能无所谓,但是一般稍微大一些的程序,函数作为规避重复劳动最好的手段一定是会频繁出现的.
在写函数前我通常会思考下面几个问题:
1) 我要解决的是一个什么问题;
2) 我要解决的这个问题能不能继续划分成更具体的问题,比如用信息熵进行差异基因筛选,那么如何计算信息熵也是值得编写一个单独的子函数的.
3) 这个函数的输入数据应该是什么样的,包括它的数据结构,数据类型和数据量的大小.对于大数据,我通常会选择把结果输出而不是等待所有计算完毕再去检查结果.
4) 这个函数的输出结果应该是什么样的,依然是考量它的数据结构和数据类型
一点点拙见.