近年来,少儿编程作为一种新兴的学习项目,也许大家听得更多的就是这一概念,实际上,少儿编程是属于当前新教育浪潮中的一个分支,属于普及编程下的一个重要发展方向。很多妈妈也在微信群里讨论人工智能是什么?编程是什么?为什么要学习Python语言等等,它培养了孩子什么能力?编程思维究竟是一种什么思维,要不要给孩子报编程班….
为何学习少儿编程?
想要深入少儿编程来了解它,我们必须先弄明白,为什么要学习它?第一,我们的目标不是培养未来的程序员,也不是一个简单的句子,能够培养良好的习惯,所以在这里,就为了更系统地为大家分析一下,我们为什么要学习“少儿编程”?
“Everybody in this country should learn how to program a computer… because it teaches you how to think.” – Steve Jobs“’这个国家的每一个人都应该学会如何编写电脑程序…因为它可以教会你如何去思考。
就像Jobs所说的,学习计算机科学,他教给我们如何思考,同时也教给我们如何创造。在计算机科学中,编程是一种独特的过程和方法,在方法论层面上给人以如何创造事物的启示。通过对儿童思维模式的培养,引导儿童戒除游戏瘾,让儿童掌握编程技巧,培养编程兴趣。
No.1:什么是编程?
简单来说,我们可以这样通俗易懂的来理解编程的概念——编程就是由人写好的,让机器做的事。生活中,编程的应用是非常广泛的,从日常接触的手机、家用电器,到人工智能机器人、语音识别、人脸识别、无人驾驶,可以说我们时时刻刻都会接触编程。
No.2:什么是编程思维?
什么是“编程思维”呢?关于编程思维,乔布斯说过:“我觉得每个人都应该学习一门编程语言,学习编程教你如何思考。”
编程思维是我们解决问题的一种方法,是逻辑思维的一种,就是利用我们已有的知识和工具,将自身的思路转化成逻辑运算的步骤,从而完成复杂的任务。简单一点说,编程思维就是处理问题的正确打开方式。
我们生活中的小事经常会用到编程思维,比如孩子早上起来吃饭、上学这件事来说为:
(1)从床上爬起来、穿衣服(2)挤牙膏、刷牙、洗脸(3)吃米饭,喝牛奶,吃菜(4)检查作业带没带,检查课本带没带(5)背书包,下楼,去学校。
No.3:编程培养小孩的哪些能力?
编程是一件很有意思的事,下面简单的说下编程能培养哪些能力。
1、 构思能力
编程是一种“先写剧本,后看结果”的活动,这要求人先在脑子里进行构思并模拟出结果,然后再实际验证结果是不是符合预期。也就是说面对一个问题时,先动动脑子,想想这个问题怎么解决。很多父母给孩子买“迷宫书”,其实走迷宫也包含这个要素,有的孩子会先在脑子里走一遍,然后一次性下笔把路线画出来,这就是一种构思和模拟能力的体现。
2、 逻辑思维能力
编程需要考虑到各种情况,根据不同的情况作出不同的选择(分支),而且各个分支之间不能重复,也要避免遗漏某一种可能性造成程序的异常行为。举个例子,交通信号灯有红、黄、绿三种状态,如果你在写程序的时候只考虑了红灯和绿灯的情况,没考虑黄灯的情况,那就不“完备”了。此外,条件还会涉及到“与”、“或”、“非”等逻辑操作,比如说,“当信号灯为红色或黄色时”和“当信号灯不是绿色时”这两个描述应该是等价的,这对于孩子来说都是非常好的逻辑训练。话说这对于职场人士也是适用的,用这种思维方式分析问题时就会比较全面不会遗漏。
3、 分解问题的能力
一些复杂的问题都可以分解中等的问题,中等的问题还可以进一步分解成小问题。在解决复杂问题时,问题的分解是非常重要的,编程中我们也经常需要使用这样的方法。举个例子,比如要造一辆汽车,我们先要把汽车分解成很多小的部件,比如发动机、变速器等,这些部件还可以继续分解成更小的部件,我们需要先造好每一个小部件,再把他们组合起来变成一辆汽车。
4、调试排错能力
任何工作都无法一蹴而就,是人总会犯错误,程序运行起来发现不对有问题,这时需要孩子能够找到出错的地方在哪里,并且将它改正。这里面包含的能力很多,比如抗挫折力、观察力、专注力等等。现在创业、创新、政府管理经常会听到有一个词叫“允许试错”,道理是一样的。
5、收获操控感、成就感
通过编程完成一个任务、解决一个问题,相当于创造出一个小小的作品,当别的孩子只会玩游戏时,你家的孩子会想到游戏背后的基本原理、甚至自己就会编小游戏,是不是会有一种操控感和成就感在里面?
No.4:我家孩子没有基础,能学会编程吗?
看了这么多,相信大家一定有一个疑问,孩子会喜欢学编程吗?因为在大人看来编程似乎与枯燥的代码挂钩。但其实并不是这样,生活中大人小孩都爱玩的很多游戏、很多APP都是通过编程来实现的,编程其实很有趣。近期学大教育也推出其编程课程具体文章点这里
同时,众多课程体系中的人工智能课程、开源电子课程、无人机编程课程全部采用拖拽式可视化图形化编程,不用记忆代码,只需要根据逻辑顺序拖到代码模块,即可实现编程。