为什么儿童一定要培养编程思维!
说到编程,“程序猿”也许很熟悉不过了,但是你通常都认为编程至少是高中以后的事吧!但是现在完全不一样了,编程已经不知不觉地走进了小学、甚至幼儿园。
儿童编程这几年在国内外的发展可谓热火朝天,美国前奥巴马还在多个公开场合狠狠地倡导推动了一把,现在已经不用再推了,因为它基本上就像阅读、数学一样,成为孩子的一门必修基础学科。
在美国很多比较好的学区从小学低年级,甚至学前班开始就开设编程课,各种课后兴趣班、编程俱乐部也非常火爆。
有年轻的家长可能会纳闷,为何编程对孩子这么重要呢?我可不想孩子以后当“码农”,甚至可能都不会读理工科啊,那还用得着学编程吗?
请接着往下看:
儿童编程为啥这么“火”
2006年,卡内基梅隆大学的Jeannette Marie Wing教授提出了“人人都需要培养编程思维”的教育理念。她认为,编程思维是每个人的基本技能,不该仅属于计算机科学家,在阅读、写作和数学之外,我们应当将编程思维加到每个孩子的培养能力之中。
2013年,斯坦福大学教育学院网站上的一篇文章“Learning to code isn't enough”(“只学写代码是不够的”)再次强调了儿童学习编程的重要性,不仅仅是要学写代码,更重要的是培养编程思维。
那究竟什么是编程思维呢?其实它跟我们平时所说的“批判性思维”、“逻辑思维”类似,都是指人脑的某种理性思考活动。但它远比这些思维的含义宽广,编写一个计算机程序,跟做一道菜,完成一个项目,管理一家公司,甚至于治理一个国家,本质上都具有相同的目标——就是要解决问题。编程过程培养的思维林林总总,比如:
框架设计思维
写一个软件,需要先做设计,搭架构;写一段程序,也需要有个大体框架,这种高屋建瓴统筹规划全局的思维几乎在任何的学习、工作项目中都要用到。
问题拆解思维
一个复杂的问题,看起来千头万绪没有思路,但编程者需要把它拆解成一个个简单的问题,再进行逐个击破。这其实跟我们生活中很多事情是类似的,我们需要把一个复杂的大问题,拆解成更可执行、更好理解的小步骤。也许复杂的问题很难一下子破解,但如果把它细分成很多个小问题,逐步解决就会变得容易多了。
培养抽象思维
编程需要的思维能力是把一件事情先抽象化出来,再逻辑化表达出来的能力,这是解决问题的一个纬度,也是看问题的一个视角。能找到这个问题的一个视角,再用具有这种思考问题的方式,就会找到解决问题的方法。也就可以用计算机工具来解决问题。
所以简单地说,培养孩子的编程思维就是培养他理解问题、找出解决问题路径的能力。这也是儿童编程变得这么火的根本原因!
如何培养孩子的编程思维
当然,最简单直接的方法就是—学编程。以前,大多数人当年学写的第一个C#程序是这样子的:
#includeint main(void) { /*下面要输出hello world*/ printf("hello world"); return 0; }
不过,现在用来教孩子编程的画风可没有这么晦涩枯燥。儿童编程已经是一个比较成熟的教育产业,很多大公司都出品了非常有趣好玩、适合低龄孩子学习编程的工具,也非常容易上手。
Scratch是一款由麻省理工学院(MIT) 设计开发的一款面向少年的简易编程工具。它适合零基础的孩子学习使用。
Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。由一个欧洲开发团队于2005年冬季开发。在国内有北京师范大学创客实验室傅骞教授开发的图形化编程软件米思齐更加贴近中国儿童的使用习惯。
随着技术的进步,更多家长对儿童编程的关注,会有更多的容易吸引孩子兴趣的硬件和软件平台出现,后续将持续介绍。
--end--
声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com