对每一个决心学习编程的程序员来说,你的学习历程可能是这样:如同一片树叶,开始被各种建议拽着走,直到学完了每一个你能想象到的课程。
但会有很多的学生觉得编程很难?其实学习编程是很有趣很好玩很实用并很有成就感的一件事!
台湾知名技术专家蔡学镛先生写了一本《编程ING》,给出了一张图:
这张图道出一个人们学习编程会觉得难的问题关键——学习过程中的“正向”兴趣循环是否成功地建立。
强烈的兴趣与不断获得的成就感是整个学习过程的“引擎”,它为学生完成整个学习任务提供源源不断的强大动力,有无数的事实支持这个观点。
而传统的教学观点认为,本科的主要教育目标之一是为学生在本专业领域未来的发展“打下扎实的理论与实践基础”,所以从一开始就要“严格要求”、“科学训练”。
这个观点不能说错,但是,我们的计算机教育,尤其是针对初学者的教育,首要的任务应该是引起学生的兴趣,兴趣是最好的老师大家应该都听过把,学习没有兴趣,一切免谈。
而现在之所以很多大学生觉得编程难,其主要原因就是现有的计算机教学方式从一开始就给了这些学生“痛苦”的编程体验,并且在后期枯燥的专业课程学习中不断得到强化,最终使很多大学生对编程敬而远之或畏之如虎。
下面我将会介绍在学习过程中会面临的独特挑战,这是每个阶段的核心内容:
学习蜜月期:这是一个充满喜悦的、非常容易取得成功的过程,借助精雕细琢的资源,你会解决那些看似很难,但全是可以攻破的问题。你会掌握基本的语法结构,对于取得的成就很开心。
迷雾悬崖:这是一个痛苦的自我实现的过程,比蜜月期难过得多,你会觉得凭自己的力量似乎什么也做不了。你的首要挑战是不断地调试,同时你还不太知道该怎么问正确的问题,来找到一种可以积聚能量的办法。
绝望迷宫:这是一段很长又很孤独的旅程。在无尽的迷宫里,没有一条清晰的道路,每一个方向似乎都是正确的。你总是绕圈圈,对于穿过迷宫所需的资源如饥似渴。
令人兴奋的上升期:终于,你找到了一条正确的路,对于如何构建应用软件有了自己的理解。但是你的代码仍然像是地窖仓库,脆弱得像纸牌屋。
通过完成上述工作并顺利度过快速成长期的关键是获得反馈。那些完全依靠自学的学生或许富有成效,但却缺乏专业级别的那种清晰的、模块化的、易维护的代码写作能力。
你需要的是其它人一起质疑你的假设、提出尖锐的后续问题,并迫使你去解决这些漏洞。
那么,你能做到吗?
前路漫漫,但你并不孤单。祝大家好运!
*版权声明:图文素材来源于公开网络资源,如有侵权,请联系我删除!!