黑马程序员技术交流社区
标题: 我是如何自学编程的——“3遍读书法” [打印本页]
作者: 黑妞~ 时间: 2014-8-12 16:32
标题: 我是如何自学编程的——“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,你只是想完成项目而已。
我建议初学者如果想学新的编程语言,最好是从书里去学,而不是跟着教程死记硬背。书里面一般都会有具体的思路,这有助于我们的理解。如果你听从了我的建议,并且正在看书,那么请不要局限于你的工作,除了书中的练习题,还可以尝试着做做自己的项目。另外,请一定要自己亲手写一遍代码,不要想当然地以为阅读和理解代码就够了——请谨记那是远远不够的!
我不是专业的软件开发人员,不过这种方法的的确确帮助了我学习编程/开发,让我得以揭开这个世界的神秘面纱,领略她的优雅风情。如果各位有更好的方法,欢迎留言!
作者: 张小楼 时间: 2014-8-12 16:49
受教了:hug:
作者: 把伤痕当酒窝 时间: 2014-8-12 17:51
写的非常好
作者: sk0806 时间: 2014-8-12 18:29
每次看立姐写的都很受教
作者: 薛马顺 时间: 2014-8-13 07:28
有参考价值!
作者: 马嘉 时间: 2014-8-13 11:21
谢谢,学习了
作者: 卡尔 时间: 2014-8-13 11:53
受教了,谢谢。
作者: 奥莉薇娅 时间: 2014-8-13 13:41
有用的东西,学习咯~
作者: fxwb2005 时间: 2014-8-13 20:41
立姐威武!~~~
作者: 天邃任我桓 时间: 2014-8-14 16:49
这种学习态度,值得我们学习!
作者: 菜鸟一号 时间: 2014-8-15 09:11
这方法我收下了,谢谢
作者: wangyang 时间: 2014-8-15 23:26
写的太好了
作者: 轩辕苍穹 时间: 2014-8-16 12:13
长知识了!
作者: 黑马-胡明 时间: 2014-8-16 18:59
前人经验,值得借鉴
作者: 木易在他乡 时间: 2014-8-18 12:05
谢谢立姐分享,在读think in java,果断借鉴.
作者: adsl 时间: 2014-8-19 10:47
收藏了!
作者: 许愿じ☆VE杰 时间: 2014-8-19 22:13
受教了!!
作者: Fightin黑马 时间: 2014-8-23 21:15
受教了受教了
作者: wfaly 时间: 2014-8-24 01:12
支持 楼主
作者: FreeFarm 时间: 2014-8-24 14:15
受教,尝试中~~
作者: clevergump 时间: 2014-9-21 17:01
不错,确实是这个道理
作者: suoxidong 时间: 2014-10-11 18:09
准备试一试 应该这个方法是可以的
作者: 林兴才 时间: 2014-10-13 09:45
感谢分享
作者: 曾勇 时间: 2014-10-17 08:20
谢谢指教,以后学习会注意这些。
作者: 田峻菘 时间: 2014-10-19 21:24
就是要敲代码
作者: suoxidong 时间: 2014-10-23 14:59
灰常好 谢谢分享
作者: chuck_heima 时间: 2014-11-10 11:04
和我的想法一样!
作者: chuck_heima 时间: 2014-11-10 11:06
和我看毕老师视频的做法一样!:lol
作者: 李运岚 时间: 2014-11-13 09:35
三遍阅读,时间是不是用得太多了
作者: 熊仔不卖萌 时间: 2014-11-18 19:40
多谢分享,受教!
作者: 骑着会飞的猪 时间: 2014-11-19 12:42
好贴,学习了!!!
作者: cxj 时间: 2014-12-18 23:23
我也想这样,但是无奈时间不够
作者: 古月哥欠 时间: 2014-12-19 01:07
天道酬勤!很受教,坚信只有付出才会有回报
作者: 宝剑无忌 时间: 2014-12-19 22:55
学习你短时间内学习那么多语言,不过方法也很常见啊感觉
作者: sunspot 时间: 2014-12-20 23:40
好厉害,自学!
作者: songkaihua 时间: 2014-12-21 19:43
我也要把我们的视频看三遍,不每天学的代码敲三遍
作者: dimost 时间: 2014-12-22 09:39
值得借鉴,谢谢
作者: c91764000 时间: 2014-12-22 22:29
谢谢立姐分享!
作者: chaijie 时间: 2014-12-23 22:46
略有感触
作者: laichunhui 时间: 2014-12-26 23:46
不错,是个好方法
作者: 581712sen 时间: 2015-1-1 14:57
可以一试!!
作者: 怪物军师 时间: 2015-1-2 20:52
学习是个技术活
作者: q798500920 时间: 2015-1-3 13:24
时间是挤出来的,但挤出来就不想再看了
作者: 木子轩 时间: 2015-1-4 12:20
书读三遍,其义自见.......一个字:赞.....{:3_57:}
作者: qiezhiyi 时间: 2015-1-12 09:41
路过,了解中!
作者: 木子轩 时间: 2015-1-13 15:26
自学编程....努力学习.....
作者: 怪物军师 时间: 2015-1-17 23:16
理解最重要!
作者: 六悦唯夏 时间: 2015-1-18 01:14
支持。。楼主
作者: jyl3203217 时间: 2015-1-19 22:26
这个还不错!!
作者: xyycici 时间: 2015-1-26 23:54
我经常第一次看书太仔细,自己能力有不够,钻研着开始烦躁,经常抓不住重点,越延伸发现不会的东西越多,都忘记自己最初要看的是什么了。结果最基础没弄懂,花时间钻研的自己又看不懂。
作者: 飞奔的坦克 时间: 2015-1-29 11:53
不错,,,,,,,,,,,
作者: 木子轩 时间: 2015-2-7 11:17
认真学习,认真学习......
作者: 骑士向前 时间: 2015-2-14 06:50
fighting!fighting!
作者: 班凤飞 时间: 2015-3-5 18:07
很有借鉴意义啊,收藏了:lol
作者: matthewjk 时间: 2015-3-12 20:22
顶一个。。。。。。
作者: zhaotiao3080 时间: 2015-3-13 08:46
确实是很好的方法
作者: DK_bai 时间: 2015-3-15 21:07
真是好方法
作者: 378939632 时间: 2015-3-16 12:06
写的非常好
作者: 1048 时间: 2015-3-20 10:38
恩恩。。。。。 O(∩_∩)O谢谢 。。
作者: 我的碧海蓝天 时间: 2015-3-20 22:41
谢谢楼主的分享。
作者: 独孤忆 时间: 2015-3-22 10:36
说的非常好,学习了。。
作者: 七十九刀 时间: 2015-3-24 22:35
受教:hug::hug:
作者: lyx5201324 时间: 2015-3-25 19:41
记下了 谢谢
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |