有很多人都会发出这样的疑问,编程一定很难学吧?
果宝编程来解答你们的问题,其实写代码不是难的,那难在哪里呢?
果果姐姐给大家总结出来难的地方
一、不会解决问题,所以觉得难
在应试教育阶段,我们所接受的教育都是为了考取更好的学校。即使是强调分析和辩论的政治主观题,也是靠模板死记硬背拿分的,现在甚至连作文都是固定的一些套路模板来写了。
这样的教育下,我们会非常的擅长记忆,习惯通过套用固定的公式解答问题。但是,一旦到学编程这里,却很难奏效了。
为什么呢?
因为编程的核心,不是语法,也不是算法结构,而是学会运用编程思维,去独立思考解决问题。
编程思维的可以分成4个部分
第一,分解
比如,比如,在桌子上有一袋水果,你想吃苹果,如果想让电脑懂你的意思,就要告诉它哪个是“袋子”、哪个是“苹果”、什么是“拿”,怎么“拿”……生活里每一个复杂问题,都是基于解决一个个被分解的小问题而被解决的。
第二,模式识别
假如你需要画100只猴子,先找出猴子的“模式”:毛发、眼睛、尾巴等,然后就可以“批量”画猴子——不用每次画一个新动物,只需要变换局部特征。
模式识别,就是根据新问题和以前解决过的问题相似性,举一反三琢磨出规律。
第三,抽象
比如,当建筑师看到一个房子时,能通过自己的经验,抽象出房子里面具体的构造。这就是编程思维中的“抽象”。
第四,算法。
通过循环执行,根据前三步的分析成果、设计步骤,写出算法从而解决问题。这一整个过程,我们看到所谓的编程语言和语法,在最后才发挥出作用。
编程思维,是你找出解决方法的能力,把现实问题转换为代码逻辑的能力。只有认清这一点并加以锻炼,你才能更好地攻克它。
二、缺少创造力,所以觉得难
清华大学曾有过一个观点:清华大学里有很多“A型学生”,但未来社会最需要的是“X型学生”。
“A型学生”,指的是传统观念里的“好学生”,他们的成绩总是能得“A”。
“X型学生”与之不同,他们的成绩并不一定拔尖,但愿意承担创新风险,勇于尝试新鲜事物。
两者最大的差别,在于创造力。
当开始学编程的时候,世界等着我们去创造的时候,是非常茫然的。整个世界的运转,都是靠你的大脑想象出来的。
这是编程的难。
但是,如果你在编程世界中,始终保持“实验者心态”,不断探索、创新,质疑自己的假设,从所犯错误中学习经验,就一定能在编程的魔法世界中得到更多宝藏。
三、不会深度思考,所以觉得难
学编程,需要探其根本,理解每一个概念的来由、定义和用途;需要多学科、深入而原始了解这个世界。
举个小例子:
C语言冒泡排序法,它的原理是来自汽水中的气泡,水中常常有许多小小的气泡,哗啦哗啦飘到上面来。而组成小气泡的二氧化碳比水要轻,所以小气泡可以一点一点向上浮动。
在C语言中,这种排序算法的每一个元素都可以像小气泡一样,根据自身大小,一点一点向着数组的一侧移动。
编程的第三难就在于,学编程,往往学的也不仅仅是计算机本身。
你要懂“生物”:不同的技术构成不同的生态系统,不同的生态系统有不同的规则;
你要懂“化学”:各类系统和语言的关键性质,提供能写出优秀程序的原料;
你要懂“历史”:技术从哪里来,要到哪里去……
它需要我们具备深入探究知识细节的能力,不允许我们冠以笼统的态度求知。因为计算机听不懂我们模棱两可的语言。
从以上三个角度来看,
我们发现学编程不仅仅是学代码、学变量,
而是在学习探索、创造、思维等多种能力。
声明:图片文章部分来自于网络,如有侵权请联系删除