学习编程的七个阶段

第1阶段:机会

你很开心,你一直想学这个新的内容,比如说某编程语言,无论是规划还是环境所迫,总之你终于有这个机会学习了。

第2阶段:没有根据地乐观

谷歌搜索——挑选一两个自己感兴趣的教程,买资料和书,然后开始MOOC(大规模在线开放教程)。教程很有趣,甚至还有在线REPL,可以让你玩耍,你觉得你正在进步中。当然也有烦恼——手指还不熟练,但你坚持,不肯放弃,并准备向你的第一个项目进军。

第3阶段:绝望的深坑

你开始从“Hello,World”延伸开去,例如,先是将内容更改为“Hola,Mundo”这样小心翼翼的尝试,然后胆子稍微肥了点,开始肆无忌惮了——于是乎,错误信息,堆栈跟踪,随机行为纷至沓来。即使不管所有的错误信息,那些能在教程中正常工作的代码,也许你亲自操刀的结果却是一片空白。你恍然发现,哪怕是一些看上去愚蠢但良性的细微差别,也会造成狂风暴雨,让你阴沟里翻船,陷入绝望的深坑。即使是最简单的任务都让你痛苦不已,你开始怀疑自己,怀疑自己其实压根就没有编程的天分。

第4阶段:放低身段

慢慢地,通过试验和错误的洗礼,通过向同事、StackOverflow、博客寻求帮助,你开始一点一滴地积累知识。你开始懂得如何显示数据,如何与数据库进行交流,如何创建接口,如何覆盖方法。虽然你还并不能真正理解上述任何一个的工作原理,但是在不断掌握这些神奇的咒语,扩充知识领域的同时,完成一些特定的、必要的任务渐渐变得不在话下。对于有的咒语,你可能会用得非常顺手,甚至在一些有问题的情况下也生搬硬套,觉得只要完成就好,哪怕内心明白自己这样做并不对。调试是一种挫折锻炼。无论是因为自我觉得目标已经实现,计划将时间放到其他地方,还是因为太难因此望而怯步,亦或是自诩已经掌握了专业知识从而做出了自认为理智的选择,总而言之很多人止步于这一阶段。

第5阶段:黎明的到来

到了这一阶段,由于你已经积蓄了足够多的信息片段,于是开始能够找到它们之间的连接。你开始能够灵活应用知识,而不是像之前那样生搬硬套。你对一些基本规则开始有所谓的直觉,开始从死板地遵守向接收知识转变。这也是一个不均衡的过程——对这方面心意相通的同时可能仍然困惑于另一方面——但是你有信心一步一步地拿下,你开始享受这个过程。

第6阶段:专业

一段时间以后,你完全掌握了基本模式,开始觉得编程就像吃饭那样轻松自然。你已经可以直观地了解事物的工作原理,并且在架构、编码和调试之间轻松斡旋。一般说来你已经不必刻意地去思考问题,就像你从家里到商店去买东西——你知道怎么走,如果有一些新造的道路,你也能瞬间权衡不同的选项,并选出一条最佳的路线。此时,碰到问题最难的应该是问题本身,而不是操作系统来支持你想要它做什么事情。

第7阶段:成就

你现在已经是一个有着多年经验的专家了。你投入的时间和精力通通有了回报。你写博客文章,助力开源项目,成为了同行中公认的专家。这俨然成为你的身份和荣誉,也成为了你的枷锁,你的所作所为需要匹配专家这个名头。突然有一天,新生事物出现了。你内心也明白,这个新事物很好,将会很有用,能帮助轻松解决现有工具不足以解决的问题,将会是未来的潮流。但与此同时,你清楚地知道成为专家所需要付出的努力和时间,需要再次感受不足和挫折,需要去向他人求助等等,你不愿意了,你退缩了。你宁愿闭上眼睛,墨守陈规,将自己蜷缩成一团,就好像枯萎的枝干慢慢死去。

来源:51CTO

时间: 2024-11-11 18:42:16

学习编程的七个阶段的相关文章

KVM学习及应用的七个阶段

本文转载自 "xiaoli110的博客" 博客 http://xiaoli110.blog.51cto.com/1724/1561107 KVM虚拟化的学习,也可以分为七个阶段,经过七个阶段的学习,就在生产环境中完成虚拟化任务. 第一阶段 虚拟机管理学习 1 了解虚拟化的历史及概念,Xen VMWare HyperV KVM特性了解: 2 分别通过virt-manager及virt-install创建一台虚拟机: 3 了解libvirt xml文件,尤其是CPU 内存 网络 磁盘 VN

学习编程的顺序步骤是什么

  学习编程的顺序步骤是什么?学习编程不仅需要坚持,强大的逻辑思维外,还要有完善的学习编程的方法,下文小乐哥给大家带来学习编程的方法详解,对于编程初学者相信会有很大的帮助! 学习编程必经的七个阶段.如下: 第1阶段 机会你很开心,你一直想学这个新的内容,比如说某编程语言,无论是规划还是环境所迫,总之你终于有这个机会学习了. 第2阶段 没有根据地乐观谷歌搜索--挑选一两个自己感兴趣的教程,买资料和书,然后开始MOOC(大规模在线开放教程).教程很有趣,甚至还有在线REPL,可以让你玩耍,你觉得你正

对学习编程的一些粗浅看法

大概是因为这个网站叫编程入门网的缘故,网站信箱经常收到编程学习方面的问题.感觉总这样回信也不是办法,所以才有了这篇文章.文章置顶到首页后每个人都能看到,这大概是一个一劳永逸的方法. 说明一下:本人不是专家,手也不高,以下所说的只是我对网友常见问题的个人看法,仅供参考.如果能为别人提供一点点帮助,那么我会感到荣幸之至. 一.编程好学吗?多长时间才能学会编程? 这个因人而宜.通常情况下,从实现第一个"Hello World",到比较熟练的编写代码,这个过程可能比学习其它的计算机技术要长一些

非科班出身的人学习编程不负责任指南

为何要写这样一篇文章 来我们这个实验室里读研的学生可能自从来到这里的第一天就觉得自己的命运很苦逼.他们读本科时主修的是机械设计.制造以及自动化之类的专业,毕业时 的简历上也顶多是写写擅长 MS Word.PowerPoint.UGNX.AutoCAD 之类的应用软件.他们有限的学习生涯里,怎么也不会想到来到这里竟然要首先重新学习 C 语言,然后还要学 C++,接下来还要学习 Python 或 Lua 什么的,而且竟然还不让用 Windows,只能用连个 QQ 都没有并且经常出故障的 Linux-

VSTO学习笔记(七)基于WPF的Excel分析、转换小程序

原文:VSTO学习笔记(七)基于WPF的Excel分析.转换小程序 近期因为工作的需要,要批量处理Excel文件,于是写了一个小程序,来提升工作效率. 小程序的功能是对Excel进行一些分析.验证,然后进行转换.   概述 小程序主界面如下: 首先选择一个日期和类别,从命名上对待分析的Excel文件进行过滤.点击[浏览]选择待分析的Excel文件所在的目录, 程序中会获取所有子目录.然后点击[执行分析]就会按照左边CheckBox中的选择进行分析,分析结果显示在每一行中间.[修改配置]可以对分析

为什么你该开始学习编程了?

有一家饭店的大厨,烧得一手好菜,经过口碑相传,客人从五湖四海闻名而来.然而这对饭店的老板来说,并不单纯是一个好消息.因为客人不是奔着饭店,而是奔着大厨的手艺来的.老板必须想办法留住这位大厨,否则他一旦被别人挖走,饭店的生意就会一落千丈了.然而即便老板不惜血本保证了大厨的忠诚度,风险也依然存在: 大厨休息或请假的时候,菜品的口味就无法让顾客满意: 大厨只有一个,如果想在多个地方开分店,那口味也就不能保证了: 大厨再厉害,同时也只能炒一个菜,而顾客越来越多,输出总是供不应求: 大厨年纪大了总是要退休

网上学习编程的七大趋势

随着互联网技术的不断提高,网上学习已经越来越普及了.无论是目前,还是将来,它都将会成为一种流行的学习模式.谈及编程,在Glasssdoor最近发布的一份调查报告(top 25 lucrative, in-demand jobs)中,介绍了25份高薪工作.而在这些工作中,超过一半的工作岗位要求具有编程技术.世界正在飞速发展,世界各地对IT技术人才的需求正在不断上升.尤其是在美国,除了硅谷,在其它各洲,同样需要大量擅长编程和开发的技术人才.面对这种趋势,如果你也有兴趣成为一名程序员或开发者,那你应该

Windows界面编程第七篇 文件拖拽(文件拖放)

本文配套程序下载地址为:http://download.csdn.net/detail/morewindows/5128654 转载请标明出处,原文地址:http://blog.csdn.net/morewindows/article/details/8634451 欢迎关注微博:http://weibo.com/MoreWindows   前面已经有六篇文章介绍了Windows界面编程,目录如下: 1. <Windows界面编程第一篇位图背景与位图画刷> 2. <Windows界面编程

调查:你会让你的孩子从小学习编程吗?打算几岁开始学?貌似能锻炼逻辑思维能力。。。

问题描述 你会让你的孩子从小学习编程吗?据说能锻炼逻辑思维能力... 解决方案 解决方案二:欢迎大家吐槽啊,解决方案三:都没人在吗?解决方案四:我打算让下一代学吉他.编程.英语解决方案五:我觉得让下一代当个牙医是个明智之举解决方案六:我觉得是不是应该需要锻炼孩子的视野,多看点书,多走点路.解决方案七:学习编程,只是想锻炼一下,不是培养孩子做程序员.编程好像确实能提高逻辑能力方面应该还是挺好的.解决方案八:小孩子还是以兴趣为主吧.要是他主动学,你就教教呗.解决方案九:引用7楼devmiao的回复: