研究生毕业已经整整一年了,在一家软件公司上班,也写了不少代码,其间,有很多对于写代码的感受,和思考,写出来和大家分享下,现在思绪还是比较凌乱,以后随着工作的积累,会慢慢进行整理归纳。
直接切入主题吧,在研究生阶段和工作阶段,读了很多关于如何编程的书,代码级的《代码整洁之道》,到代码组织结构级的《设计模式》 《重构》以及 编程思想层面的面向对象设计与分析相关的书籍,如《敏捷软件开发:原则,模式与实践》,涉猎了很多如何组织与构建清晰软件架构的知识,以及如何通过面向对象的思想和方法,组织自己的程序,即类,函数,变量。
类、函数、变量是我作为程序员在工作中每天都与之打交道的三个编程元素。这一年的时间里,我写出了大量的类,函数和变量,但它们的实际行为却千差万别。
一、有的类短小精悍,实现的功能,方法的设置,一目了然,没有任何隐晦的实现逻辑,和肮脏不堪的状态变量,一切都是那么自然,那么易于理解。类的功能明确,函数简洁明了,有一致的实现抽象级别。对于读代码的人,其学习成本极低。
二、有的类臃肿不堪,逻辑不是表现在函数的调用层面,而是隐藏于一堆调用中的某个函数的细节实现中,并夹杂着莫名奇妙的状态变量,以及让人抓狂的大量{}嵌套语句和分支语句。每一次调试这样的代码,都感觉是潜水时,进入了深不见底,无边无际的海藻从中,急切渴望直冲水面,大口换气。这样的类学习成本极高,甚至无法修改。
同样对于函数,也存在上述问题。变量则需要好好控制。管理好其作用域,不要使其成为一匹野马,不然什么时候它影响了程序的运行状态,你可能都一头雾水。
对于写出易于理解,和易于修改的代码,市面上有很多值得细细品味的书。编程本身也是一门技艺(我不认为是艺术),需要年复一年的磨练、总结,不断提升。
原文:http://blog.csdn.net/dong120f/article/details/19327245