从03年开始做程序设计一路走来,总的来说代码量越写越少。
刚开始做程序开发的时候,我主要还是做功能实现,负责项目设计的同事把接口写好,剩下的事情就是写功能实现。写功能实现的难度并不大,简单的说就是把数据按照固定格式处理结束之后,回传出去就可以了。这期间每天的代码量都比较大,平均一天下来也能有500行左右。
随着自己编码能力的提高,很多代码的复用会做的比较好,在整体的实现过程中会采用更加简便的实现方式,也懂得使用模块化的开发模式,伴随着这个过程代码量有一定程度的下降源码,但是思考的时间变长了,有的时候需要一些时间来做验证。
在2006年确定了自己的主攻方向之后,代码量再次下降了。因为工作的中心已经从功能编写调整到一些框架设计以及算法实现上,这个期间的代码量一天也就在200行左右,这里面还有不少是在编写接口。这期间的工作重点是实现算法、做数据分析和建模,这期间还使用了MATLAB,所以在编码上就下降了不少,但是难度却提升了很多,有时候完成一个算法的验证需要一周甚至更长的时间。
2010年之后,我的主攻方向又增加了机器学习和大数据的内容,这时候我每天的代码量又再次下降了,平均也就是100多行吧。有的时候一天就能写几十行代码,而关于算法的分析、训练、验证的时间变得更长了。刚开始使用Java的时候代码量还能多一些,后来使用Python了,代码量就下降了很多,目前也在使用Python做算法实现。
其实,做计算机研发源码,程序设计更像是工具,无论使用什么语言,最终的任务都是实现功能。编码量的大小跟所处的角色有较大的关系,跟编程水平的高低并没有太直接的关系。当然,高水平的程序员一定有大量的编码基础,这个是毋庸置疑的。