学编程,你不能学会了游泳再下水

我一直担任着公司游泳协会的教练。主要负责教会员学习蛙泳和自由泳。夏天要到了,最近收到了一些新会员学游泳的咨询。

今年的新会员比较特殊,很多压根不会游泳但说起游泳的要领都是如数家珍,对蛙泳腿的“收翻蹬夹”四要领,自由泳的最优划水线路这些知识的了解程度甚至超过很多老会员。也许无数个无聊的夜晚,他们通过网络学习了整套的教学视频,也曾在床垫上练习过多次基础动作,唯一的问题就是没有勇气下水试试。

我总开玩笑对他们说:“难道你们要等到在床垫上学会了游泳再下水吗?”

这些人实在是匪夷所思,但他们却活生生地出现在我身边,IT怪咖的思维方式有时候就是这么奇葩。

不过,这件事让我联想到了很多简书的朋友问我学习编程有什么捷径。我总说最好的捷径就是多敲代码。这就好像学游泳最好的捷径就是下水去游。其中的各种好处也只有亲身体会过的人才能了解。总结一下主要有四个功效。

1. 在敲代码中记忆

我本人刚学C语言的时候,自己还没有电脑。由于是利用寒假自学,也没有实验室的机器可以用。你能想象我当时有多痛苦。死记硬背32个关键字都让我颇费了一番功夫。在没有计算机的情况下学编程和学马经差别不大,除了死记硬背做选择填空题之外没有什么太好的方法,我一度有了放弃的打算,因为完全没有乐趣可言。

后来有了电脑,我第一次把自己写在纸上的代码敲在计算机上运行的时候,那感觉变得完全不一样了。虽然我在教科书里已经见过Turbo C那个丑丑的黑框无数次了,但当它出现在我眼前的显示器上的一刹那我还是激动得不行。那种感觉不能简单地用一个“神奇”来形容,它充满着神秘感,让我一下拥有了好奇心想要探索下去。

有了这份动力,对我而言学习C语言不再是痛苦而是享受。每次上机练习的时候我都感觉自己状态特别好。之前记不住的关键字敲两遍就自然记住了。自己做过的每一个练习被深深地烙在了脑海里,想忘也忘不掉。仔细想想,敲代码与阅读教材最大的不同就是它是以试错为基础的。在你不断地输入调试的过程中,你所有的精力都被用到了你最容易出错的地方,因此这样的学习特别有效。

2. 让IDE帮你检查代码

为什么试错能提高学习效率呢?很多同学有这样的精力,信心满满地输入了一段代码,觉得肯定不会有任何问题,结果IDE告诉编译失败。最郁闷的是报错信息还看不懂,你很抓狂。这时候你能做的就是用自己仅有的知识进行排查。是不是什么地方少了个分号?是不是大括号没有匹配?是不是关键字写错了?是不是头文件没有包含?是不是...?

也许最终你花了半个小时的时间终于发现是有个变量没有初始化导致的错误。成功运行之后你真想说脏话,但这半个小时让你这辈子都不会再忘记变量要先初始化。

有时候编译器告诉你代码编译成功,你很开心。可是运行的时候却弹出了错误信息。一堆你根本看不懂得提示信息。你又郁闷了。你盯着IDE指出的错误位置发呆,心想它究竟又在闹什么脾气。最后实在想不到,你只能求助老师,结果是你的数组访问越界了。从此你学会了要规范地使用for语句的条件控制。

这些就是上机练习的意义。

3. 在调试中培养逻辑性思维

最难的还不是这些。有时候你的代码能够成功运行,没有任何问题。当你刚舒一口气的时候,突然发现结果并不是你想要的。上机练习时常听到这样的自言自语:“怎么是3,应该是5呀...”。

这个时候,你该发挥IDE的优势调试你的代码了。最常用的方法就是通过打断点、单步调试的办法跟着代码的逻辑一步一步走,过程中要监视着各个变量是如何变化的。这样,你就会在某一次循环中突然发现原来你有个环节没有考虑周全。

不断地这样练习会让你的逻辑思维能力越来越好,而这个恰恰是编程能力最重要的组成部分。

4. 成就感就是动力

这些过程是痛苦的,很多人都倒在了这条痛苦的路上。但正因为过程痛苦,成功后才格外的喜悦。每当看到自己千辛万苦调试的程序成功地显示出正确的结果,你一定想大声欢呼出来。

工作多年的程序员们每次提交代码的瞬间都是喜悦的,这一点从他们的表情和话语中就能感受得淋漓尽致。如果说什么让这些程序员们对繁重的编码工作欲罢不能的话,那一定是这些星星点点来之不易的成功的喜悦。

程序员们心中最大的优越感就是觉得自己的工作是在改变世界。我想,改变世界的成就感足以让任何人有毅力完成繁重而枯燥的编程学习。不过你要习惯从现在的上机练习开始寻找这份成就感。

5. 最后

不要再纠结于教程上的某一个小小的知识点,也许它并不影响你掌握一门能够改变世界的软件开发语言。当你开始用键盘敲代码的时候,每敲一个字符你就离成功更近了一步,因为你走的是学习编程唯一的一条捷径。

我是天花板,让我们一起在软件开发中自我迭代。
如有任何问题,欢迎与我联系。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,290评论 6 491
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,107评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,872评论 0 347
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,415评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,453评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,784评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,927评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,691评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,137评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,472评论 2 326
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,622评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,289评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,887评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,741评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,977评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,316评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,490评论 2 348

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,756评论 25 707
  • 九月八号那天是我来学校报到的前一天,那一天我学习了出门在外的第一堂课。 那天中午我正在收拾我的行李,心中满怀着对大...
    月下魂阅读 241评论 0 0
  • 一口气跑完十公里,一下都没停。 第一次疲劳点到时我都快提不上速度了,但是咬牙靠着音乐带着速度,慢慢向前跑,对自己说...
    好的唐诗阅读 300评论 3 0
  • 发现有时候这种担忧的情绪没人愿意听,不想与人讲。昨晚吃了鸭脖子、辣的藕片、鸭肠,胃口超级好。想想不管什么结果怎样我...
    携子之阅读 158评论 0 0