经验02 水滴石穿——编程学习经验谈
合抱之木,生于毫末;九层之台,起于垒土;千里之行,始于足下。
——摘自《老子·道德经》
和很多初学者一样,我在最开始学习编程的时候也充满了恐惧,认为编程是一门很高深的技术,尤其是一些算法、数据结构、大量的技术术语和新技术更让自己不知所措,也不知该从何学起。
说明
最初,笔者自己开始翻阅一些书籍,按照书中的例子进行上机操作,总算对编程有了一点点的领悟。这时也只能说是略懂皮毛,看的也不够深。真正使自己跨进编程门槛的是一个实际的项目,在真实项目中的摸爬滚打,既让自己认识到了自身的不足,又让自己的技术有了长足的进步,同时也在项目中培养了自己发现问题和解决问题的能力,对于不会的问题要敢于追问,自己能解决的问题绝不求助别人,从最开始的不知所措到最后的驾轻就熟,关键是要靠自己的毅力与努力,其实编程并不难,只要有信心,你也一定能够做到。
我将总结自己历年来所经历的经验,提出几点学习编程的建议,希望对刚入门的读者有所帮助。
1.勤上机,多动手
这一点是最最重要的,编程强调的就是实际操作,只知道死啃书本的人永远不会成为编程高手,只有通过不断地上机操作才能加深自己对编程的体会,而且程序中的有些问题是“只能意会,不可言传”的,也不是书本上的几句话可以说清楚的。同时在自己实际操作的过程中也会发现自己原来认识上的误区,随时纠正我们的知识点。只有知识与实践相结合才能发挥它更大的力量。
说明
计算机强调的就是实践,程序不是背出来的,而是通过实践练出来的。
2.尝试自己解决问题
在编程或实际的项目开发中,经常会遇到一些这样或那样的问题,可以先尝试自己解决,哪怕用一天的时间,实在无法解决的时候再找别人帮忙,不要碰到问题就求助于别人,要锻炼自己解决问题和应变的能力。这一点在实际的项目开发中是非常重要的。
3.多读优秀程序的源代码
读别人代码的过程也是一个学习的过程,从中可以学习别人优秀的设计思想,优质的代码质量,就像吸功大法一样吸收并消化别人代码中优秀的东西。这样可以拓宽我们的编程思路,发散自己的思维。有一定基础以后可以尝试自己写一些框架,和现有的框架进行比较,看看自己和现有框架的差距在哪里,他为什么要这样写,在这样反反复复的思考中进步会更加迅速。
4.多上Google、Baidu和编程论坛
现在网络的资源丰富,同时也是最好的老师,当你遇到问题的时候,可以尝试上网搜索一下,也许你遇到的问题别人也遇到过。经常上编程论坛看看,了解一下业界的最新技术动态,跟上时代的步伐。我们要充分利用身边的有效资源帮助我们解决问题和充实自己。
5.养成代码规范的编程习惯
“好习惯使人终身受益”,在学习编程之初养成一个好的编程习惯是非常重要的。现在的编程都是团队协作开发的过程,个人英雄主义的时代已经过去,记住你写的代码是要给别人看的,所以代码要尽量符合规范,例如不随便为变量起名称,尽量要取与其功能相符的名称;养成写注释的习惯;语法结构清晰,代码的缩进对齐要符合规则等。规范的代码可以大大降低软件项目维护的成本。
6.摒弃VC大法
所谓的VC大法,就是使用快捷键复制、粘贴代码。VC大法虽然可以提高程序员的开发效率,但对于初学者而言,VC大法有百害而无一利。就是看到别人优秀的代码,也要一字一句地敲下来。初学编程时要尽量少地利用编程工具的智能提示。对于初学者而言只有一字一句敲下来的代码才是属于自己的程序。
7.关于英语
英语真的对编程很重要吗?其实编程上需要的英语很少,多数都是一些基本的语法,即使你一篇英语文章也读不下去,也可以编程,如果你只关心编程,那么有初步的英语基础就够了,但是掌握英语的读写能力可以帮助我们快速学习最新的技术文档,以最快的速度掌握新技术。所以英语对程序员来说是有帮助的,但并不是绝对。
总之,学好编程需要我们脚踏实地的学习,量的积累才会有质的飞跃。“天下事有难易乎?为之,则难者亦易矣;不为,则易者亦难矣。”只有实际行动起来,才会有不断的进步。