“3遍读书法” 我是这样自学编程的

我 大学本科念的是电子工程专业,所以到那个时候为止,我唯一使用过的编程语言就是C/C++、Assembly、以及
Matlab。后来一个偶然的机会我参加了一个“周末创业”的活动,并且开始渐渐对软件开发和计算机科学感兴趣,然后我发誓我要不择手段地进入这个洋溢着
无限魅力的领域。但是,我需要学习其他的编程语言,以便于和大家协作一起搞项目。

在过去的一年半时间里,我已经学了Java(用于Android开发)、Python和JavaScript(&HTML /
CSS)(用于Web开发)。在这“路漫漫其修远兮”的学习过程中,我总结出了一条规律:要想对书中和教材里的编程知识融会贯通,那么就要好好研读3遍!

是的,你没有听错,就是3遍!这种“3遍读书法”用在理解新语言新概念方面的效果尤其显著。出于“大家好才是真的好”的共享心态,在这里我将详细说说我的
这种方法,希望能对各位有所裨益。

第一遍通读


一次阅读编程类书籍,只要能对全文有一个正确的理解即可。第一次阅读,我会尽可能地跟着作者的思路走,看看他们用于展示的例子。我也学习,学习语法,
学着去了解程序是如何构建起来的,当然可能并不全面。第一次通读的时候,我不会去写任何代码,即便我大多数的编程书籍都能看得懂。在第一次阅读之后,我并

不觉得我能一下子一步登天立马就掌握了如何用新的语言写代码。但是,这会让我有一种掌握全局的良好感觉。(顺便说一句,我通常一次只读取一章或一节,而不
是整本书)。

第二遍研读

这一次,我就
要写代码了。我会把每一章节所举的例子,自己试着也用代码输一遍。我之所以要先通读,然后再回过头来好好研读的原因就是,这样不但能让我知
道每一章节具体讲什么,还能明白这些代码能干什么。这样我就能对整本书的前因后果、来龙去脉掌握的清清楚楚、明明白白。不光理解得更透彻了,而且对于代码
也不再是盲目地囫囵吞枣,而是有预见性地先在下面的段落中知道了它的作用,然后在回过头去再次重新研读。这一步,让我记住了语法。

第三遍精读

第三遍的时候,我就不再满足于书上的例子了,我会自己发散思维,试着举一反三,自己举例子来应用这些代码。也会去看看书上提出的练习,然后试着靠自己去解决这些问题。到了这个阶段,每一章节的语法都尽在我心,胸有成竹,我自信这些个问题统统不在话下。

附耳过来,一般人我不告诉他……


就是靠着这个方法自己一步步学会了Java,Python和JavaScript的。另外一个学习编程语言的好方法是做项目。如果你想知道更多有关于
Java语言中的用户界面和图形,那么不妨建立一个PVP国际象棋游戏,这会迫使你不得不学会有关于图形、动画、图形用户界面,以及事件驱动等等。


过两者的不同之处在于,单纯去搞项目(特定语言)而不经过知识的灌溉,即使你也能完成项目,但是写出来的代码绝对没有我的“3遍读书法”精炼、简捷、
准确、一针见血。你也不可能真正掌握这门编程语言。我的意思是,如果你精通C语言,那么最后你写出来的Java语言可能会带着C语言的风格,搞得四不像。
为什么会这样呢?因为其实你并不是真正会Java,你只是想完成项目而已。

我建议初学者如果想学新的编程语言,最好是从书里去学,而不
是跟着教程死记硬背。书里面一般都会有具体的思路,这有助于我们的理解。如果你听从了我的建议,并且正在看书,那么请不要局限于你的工作,除了书中的练习
题,还可以尝试着做做自己的项目。另外,请一定要自己亲手写一遍代码,不要想当然地以为阅读和理解代码就够了——请谨记那是远远不够的!

我不是专业的软件开发人员,不过这种方法的的确确帮助了我学习编程/开发,让我得以揭开这个世界的神秘面纱,领略她的优雅风情。如果各位有更好的方法,欢迎留言,谢谢:)

作者:佚名

来源:51CTO

时间: 2024-09-24 04:44:41

“3遍读书法” 我是这样自学编程的的相关文章

我是如何用 10 天自学编程,改变一生的?

我是我,一个因兴趣入行的商学院毕业的程序员.最近有不少人,来问我,想学编程,但是又不知怎么开始.所以,我想把我8年前影响我一生的10天自学编程的经历,毫无保留的分享出来. 如果看到这标题,会让你觉得,读完一篇文章就能快速的掌握编程技术的话,这可能会让你失望,这里甚至没有一行代码. 我想分享的,是我最初自学编程的经历和心法. 1.决定 2009年初,一个潮湿.肮脏.背靠竹林的大学宿舍里,其中一张书桌,放着一台与环境格调不一致的纯白色的苹果Macbook电脑.她是我课余时间最好的朋友. 我读的是商学

一个零基础自学编程的菜鸟真诚向各位高手请教!

问题描述 我是一个零基础,不是计算机专业的计算机编程爱好者,我非常喜欢编程做软件的那种感觉.但是我已经这里那里的公司混了一年了,依然感觉自己做不出来什么东西,目前最基本的SQLSERVER都不会用,但是目前又在一家公司硬着头皮学习,但是我知道我肯定留不长的.因为我的基础非常有限,因为家里穷,必须工作,否则连填饱肚子的钱都没有.我非常想突破自己现在的瓶颈,我不知道如何去突破.基本的C#语言看的懂,但是到运用他们完全不看书开发一项简单的任务时就不知所措,完全不知从哪里下手.书,我也买了不少,基本开了

自学编程的人,都是怎么找到自己的第一份工作的?

每年毕业这么多大学生,很多被培训机构弄去培训了,但是更多的还是选择在大学期间,自力更生去自学,自学的人很多都觉得没有方向太难了,自学怎么坚持下去,自学完了怎么去找到自己的第一份工作. 带着这么多的问题,小编就尝试着解答一番,如何才能直接一步到位拿到自己工作的第一份offer. 首 先建立起自力更生的信心,换句话说就是拿出学习的勇气和毅力.很多正在自学的人,都是觉得我能不能行啊,周围的都去参加培训了,最后能不能比的过参加培训 的啊,内心会有一系列的疑问,从大的方面来讲,每天参加培训的毕竟是少数,大

本人自学编程新手上路请问我的这个怎么错了

问题描述 本人自学编程新手上路请问我的这个怎么错了 解决方案 目测中英文不区分问题,在编程的时候切记切换为英文状态,而且最后一行应该是:printf("n"); 解决方案二: 第一个for循环中最后一个表达式怎么是1==,这是啥意思啊? 解决方案三: i==应该是i++吧,而且最后一行应该是:printf("n");

文档-我是新手自学hibernate,遇到一些问题,希望得到前辈们的解答??

问题描述 我是新手自学hibernate,遇到一些问题,希望得到前辈们的解答?? 我看hibernate的帮助文档,在文档Mapping guid 中找不到@oneToOne注解,这个字段 仅仅有@oneToMany的注解,是不是在hibernate5.0版本后,@onetoone别舍弃了! 解决方案 http://www.2cto.com/kf/201211/166474.html 解决方案二: 这个你可以百度看看.

Instagram创始人:利用下班时间自学编程

Instagram创始人.CEO凯文·斯特罗姆 新浪科技讯 北京时间4月10日下午消息,在被Facebook以10亿美元收购后,Instagram CEO凯文·斯特罗姆(Kevin Systrom)将获利4亿美元,他也将因此创造当今硅谷最伟大的成功故事之一.但与Facebook CEO马克·扎克伯格(Mark Zuckerberg)不同,斯特罗姆从未接受过正式的编程训练. 斯特罗姆是一名自学成才的程序员.他在社交旅游网站Nextstop营销部门工作时,便开始每晚抽时间自学编程,Nextstop后

自学编程的六个技巧总结

有一天,我的一个在学编程的朋友问我:"我想快速学习编程,你有什么好的推荐吗?我曾在上大学的时候自学过编程,这么多年过去了,我意识到我或许是在用最困难的方式去学习和了解编程.本来我完全可以用更快的速度学习.因此,在回顾了过去之后,我写下了这些年来我渐渐掌握到的关于如何学习编程的一些事情. "快速" 对于"如何快速学习编程"这个问题,其实我真的不知道何谓"快速".我觉得,通过遵循以下建议,你将很快地学习编程(至少你的成长/进步会快).但你真

自学编程的 6 个技巧总结,看完你就懂了

有一天,我的一个在学编程的朋友问我:"我想快速学习编程,你有什么好的推荐吗?我曾在上大学的时候自学过编程,这么多年过去了,我意识到我或许是在用最困难的方式去学习和了解编程.本来我完全可以用更快的速度学习.因此,在回顾了过去之后,我写下了这些年来我渐渐掌握到的关于如何学习编程的一些事情. "快速" 对于"如何快速学习编程"这个问题,其实我真的不知道何谓"快速".我觉得,通过遵循以下建议,你将很快地学习编程(至少你的成长/进步会快).但你真

自学编程的 6 个技巧总结

有一天,我的一个在学编程的朋友问我:"我想快速学习编程,你有什么好的推荐吗?我曾在上大学的时候自学过编程,这么多年过去了,我意识到我或许是在用最困难的方式去学习和了解编程.本来我完全可以用更快的速度学习.因此,在回顾了过去之后,我写下了这些年来我渐渐掌握到的关于如何学习编程的一些事情. "快速" 对于"如何快速学习编程"这个问题,其实我真的不知道何谓"快速".我觉得,通过遵循以下建议,你将很快地学习编程(至少你的成长/进步会快).但你真