编程网

少儿编程意义何在?看完你会想让孩子学学!

2017-12-20

 

前几天,小贤学校要准备一个编程比赛,要提交自己的设计的程序或小动画。作为老爸,关键时候还是帮帮他的,我们决定用scratch软件来编写。


开始时,他直接打开软件,先糊弄一番。选上小猫或不同那个的角色,加以不同的场景,动手做起来。



不过,我很快发现,孩子们做事情都有一个通病,就是先干再说,没有规划性。所以,我马上叫停了他,先和他一起做计划,先要准备做什么,描述好最后的效果,还有那些不懂的东西要学习,最后再动手开始干。


这样按部就班做事,这也就是编程思维的表现吧。


为什么要让孩子学编程?


因为不满足学校已有的课程或学习形式,我会选择一些让孩子感兴趣的模块,让孩子学习。例如科技制作,编程等。儿童编程绝对是开发逻辑思维的工具。


编程思维是每个人的基本技能,今后不懂编程就是半文盲。2006年,卡内基梅隆大学的Jeannette Marie Wing教授所提出了“人人都需要培养编程思维”。

2013年,斯坦福大学教育学院网站上的一篇文章“Learning to code isn't enough”(“只学写代码是不够的”),强调不仅仅是要学写代码,更重要的是培养孩子编程思维。


什么是编程思维?它是指人脑的某种理性思考活动。编写一个计算机程序,跟做一道菜,完成一个项目,管理一家公司,本质上都具有相同的目标——就是要有序地解决问题。


编程学习的好处!


我觉得,编程会培养孩子的多种能力,比纯粹的解题能力更重要。


1.大框架思维


写一个软件,需要先做设计,搭架构,就像QQ程序,腾讯的CTO十几年的程序架构都适合现在几亿人的在线,这是多么强大的架构能力啊!


写一段程序,也需要有个大体框架,这种统筹规划全局的思维几乎在任何学习、工作项目中都要用到。

2.复杂任务拆分


一个复杂的问题,看起来千头万绪,编程者需要把它拆解成一个个简单的小问题,再逐个击破。


就像生活中策划一个生日派对,只需要“拆解”细分,比如分成确定邀请多少客人,买些什么食品,派对上些什么节目……这样就好办了。


3.函数变量思维


这有点像麦肯锡方法,“不要重新发明一个轮子”,就是应用了“函数思维“,需要时直接借用原有的思维模式,重新输入条件,进行问题解决。


例如,编程者通常会把那些将会被重复使用到的运算过程或方法,先编写并储存为函数,需要时就直接调用,只需改动输入某些参数、不同场景等即可,不用每次都重新编写。


用Scratch来学编程思维

下面贤爸给想给介绍一款免费的编程程序软件(Scratch)。它是以积木块的形式,将繁琐的编程语法以及语句结构都做成了一个个可视化的指令块。

整个编程就像儿童在搭有趣的积木玩具,同时在Scratch的舞台区,会对积木式程序自动进行演示,学生可以很直观地看到各种脚本设计所呈现出来的实际效果。




随着智能化社会的发展,未来不会编程的孩子可能就像不会说英语的孩子一样,在这股浪潮来临之前,既不盲从,也不要焦虑,根据自己的情况积极应对即可。


1.编程帮助学数学


我利用编写一些移动或打斗小游戏,带孩子学习直角坐标轴的数学知识。先展示一个 3*3 的单元网格,用简单的上下左右来识别位置,让小贤用坐标系准确定位。


当他熟悉了 x 轴和 y 轴的概念之后,再教孩子玩 Scratch 上关于飞机的简单游戏。一旦他们上瘾了,我就鼓励他学做简单的游戏。


2.编程有助解题能力


编程的本质是利用逻辑思维解决问题的过程。通过学习编程可以让孩子解决问题的能力得到刻意练习。


或许孩子们不懂计算机思维中的算法、递归或探测程序这些词语是什么意思,但是他完全可以理解这些基本概念,应用到解题过程,解题速度大增。


3.元认知能力训练


对于 5-6 岁的孩子来说,他们正处于从感知环境到形成逻辑关联的发展阶段,编程学习对这个过程很有帮助。早在上世纪一项以 6 岁孩子为主体的研究就发现。


学习编程的一组儿童在元认知相关技巧和方向表达上,都比只接受计算机辅助教学的儿童表现得更好,前者的创造性思维和发散思维也在学习编程 12 周后得到提高,而后者没有显著变化(Glements & Gullo,1984;Glements,1986)。

最后,小贤在我的帮助下,完成了几个打怪游戏,还有《寻宝藏》的游戏,角色遇上到桌子要绕着走,遇到墙就返回。这里用到用什么样的语句来达到控制角色走动,以及侦测语句的使用,就能达到游戏的效果。


据我的经验,编程思维训练,从娃娃抓起不会错。有时不拘泥编程的软件,主要是编程思维。


本文转自公众号:贤爸科学馆不代表本网站观点。