学习编程照着别人的代码去敲有用吗

随笔 2018-11-21

“模仿是人类一切学习的开端,然后才是创新,最后是你的自主” --毕加索

起步

当然有用。学习画画有个阶段就是临摹:

20181121153222.png

临摹是艺术类学生必须经历的过程,在临摹的时候不能加入自己的任何修改,那怕你觉得原作这样处理并不好。

同样,作为学习编程的初学者,模仿也是入门的最好的路径。不管是从书上的还是博客上还是框架的文档,一开始一边参考对照一边敲,到最后自己能够独立完整写下来,那怕变量名变都不变。切勿急于求成,文档都不看,例子也不做,直接看语言和框架的源代码,往往得不偿失。

这里的模仿当然不是 ctrl cctrl v 这种偷懒的方式,而是一字一字的来。也经常会出现 "我跟书里敲的一模一样,为啥我的就报错呢?" 其实这正是引发思考的开始,这就不得让学习者从头开始思考,先回顾原代码实现功能的思路,然后思考为什么要这样实现,再结合自己的代码有哪里不同。

模仿的过程就是学习、思考、总结的过程。

更有效的模仿

“敲代码”靠的不是手指头,靠的是大脑。你首先要做的是阅读程序,深度的阅读。我曾经为了阅读 jQuery 源码,也跟着敲了一千多行代码。从宏观出发,程序分为几块,每一块任务是啥,做了哪些事。然后再分解每一块,遇到难解的先跳过别纠结,不要被其中某个语法或结构上的小疑惑困住,照抄一遍会让你直接进入细节,边抄边思考,想结构,想语法,利于你形成自己解决问题的能力。

进入一个新领域学习,总是初时要慢。抄比读,更细腻。读几遍可能会有粗枝大叶的地方。享受自己的程序跑起来的乐趣吧。


本文由 hongweipeng 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

赏个馒头吧