很多进入计算机专业就读的学生,最初至少有一大半对真实的软件开发完全不了解,是“一张白纸”。
不幸的是,学了四年之后,许多张“白纸”又变成了许多罐“浆糊”,带着对软件开发可能是畏惧,也可能是无所谓,但绝对不是喜欢的感触离开校园。
可是,编程真的那么没劲?那么难和枯燥?今天小编想和大家好好聊聊“编程究竟难在哪?”这件事。
01:如何建立学习过程中的“正向”兴趣循环(长沙北大青鸟学校)
兴趣是最好的老师,学习过程中的“正向”兴趣循环是否成功地建立对于能否坚持学习至关重要!
强烈的兴趣与不断获得的成就感是整个学习过程的“引擎”,它为学生完成整个学习任务提供源源不断的强大动力,有无数的事实支持这个观点。
而传统的教学观点认为,本科的主要教育目标之一是为学生在本专业领域未来的发展“打下扎实的理论与实践基础”,所以从一开始就要“严格要求”、“科学训练”。
这个观点不能说错,但我认为,我们的计算机教育,尤其是针对初学者的教育,首要的任务是引发兴趣。没有兴趣,一切免谈。
之所以很多大学生觉得编程难,其原因就是现有的计算机教学方式从一开始就给了这些学生“痛苦”的编程体验,并且在后期枯燥的专业课程学习中不断得到强化,最终使很多大学生对编程敬而远之或畏之如虎。
02:我们从未接受过解决问题的训练(长沙实力学校)
从小到大,我们受到的教育终极目的只有一个:考取理想的学校。每一张张考卷都是一个个堆砌起来的知识点:三角函数,解析几何,数列,函数……
这么多知识点,你需要做的是背下它们,或者说的更高级一点,理解它们。
即便是强调思辨和分析的“文科类”,也可以靠死记硬背答题模板拿分,就连作文都要有统一的标准。
我们非常擅长理解和记忆,并井井有条地套公式。
这一切,到了学编程这里,统统不奏效。
有的学生大一的时候刚开始接触C语言,非常痛苦。那会儿,没有任何计算机基础,编程语法大多靠背——C 语法、操作系统各项定义、计算机网络各种协议、常量、作用域、多态………..
身边不少同学也这样,“高考精神”还深深印烙在骨子里,我们都认为学习一门编程语言最重要的就是掌握其语法,所以为了将语法烂熟于心,最直接的方法就是记忆。
结果可想而知,即便拿了相应的学分,没有人敢说自己会编程。
我们接受了十几年的应试教育,为了最大化公平,考试必须有一套清晰的标准。正是如此,我们更看重应试技巧而非知识本身,学习变成了追求标准答案,求知变成了死记硬背。
绝大部分人,难以形成系统的学习方法论的意识,以至于很多人一旦脱离试卷,在社会中面对实际问题的时候,完全没有一套行之有效的方法论支撑其解决问题。
而编程的核心,不是编程,不是语法,甚至不是算法或数据结构本身,恰恰是如何分解问题——发现规律建立解决问题模型,映射到合适的数据结构和算法上,最后才根据算法写程序实现。
03:我们从未学过创造(长沙北大青鸟青鸟招生)
清华大学前校长陈吉宁曾提过一个观点:
清华大学里有很多“A型学生”,但未来社会最需要的是“X型学生”。
“A型学生”,指的是传统观念里的“好学生”,他们的成绩总是能得“A”。
“X型学生”与之不同,他们的成绩并不一定拔尖,但愿意承担创新风险,勇于尝试新鲜事物。
两者最重要的差别,在于创造力。
可是我们连作文还不敢写得太跳,生怕阅卷的是个老古董,大笔一挥,让你再考一年。创造力,更是我们在学校想都不敢想的事。
绝大部分学生的思维,早已在填鸭式的教学中,变成了一个只会收纳外部知识的容器,根本无法用所学的东西创造出任何东西来。
所以,当我们开始学编程,面对“Hello world.”这个等着我们创造的世界,其实是非常茫然的。
因为编程没有“题型”和“公式”能把你解决问题的过程简化成填空,编程提出的问题基本都是空而泛,需要你根据脑子里的逻辑推断,利用所学编程语言的各项功能组织成代码,来解决问题。
整个世界的运转,都是靠你的大脑想象出来的。这是编程的难。
但是,只要你明知其中不易,仍有一腔骁勇,你可以尝试在编程的世界中,保持“实验者心态”,不断探索自己的想法,质疑自己的假设,从所犯错误中学习宝贵的经验,就一定能在编程的魔法世界中得到更多宝藏。
声明:北大青鸟长沙实力所推送文章,目的在于分享知识,若图片及某些文字言论涉及版权问题,请联系我们 我们会在24小时内删除处理,谢谢!