分类
Scratch编程

Scratch编程入门感想

 经常有家长问到我,你觉得编程对孩子来说有什么用?

今天聊一点我的具体体会。

要了解编程有什么用,首先要了解编程在做什么?大家口头常说编程,一般已默认为计算机编程。我常解释计算机编程是利用计算机技术解决生活中的问题,实际上离开计算机,我们生活本身就是一个不断在编程(即准备解决某个问题的流程/做某件事情的流程)和执行程序的过程。

比如说,

我问孩子:从起床到上学,你需要做好哪些事情?

孩子:睁开眼睛、上厕所、吃饭、穿衣服、背书包、穿鞋,然后出门上学。

我:蛮全了,仔细想想还有什么吗?

孩子:嗯,好像没什么了,还有和爸爸妈妈说再见~

我:刷牙洗脸了没有啊?

孩子:… …

我:先吃饭还是先穿衣服?

孩子:… …

我:需要多少时间呢?

孩子:… …

我:今天好像要下雨,记得带伞?

孩子:… …

每个家长有一套孩子的起床到上学的流程,不少孩子能严格执行家长的流程,也有很多孩子让家长头疼。除此在外,做作业、睡觉、待人接物、包括去玩耍… … 有什么事情离得开程序呢?

可见,编程存在于生活的每一个角落和每一个时间,编程一点也不难,也不生僻啊!

回到计算机编程,Scratch编程语言以其强大的展现能力,让低年级孩子很容易通过动画、游戏等来模拟解决生活中的问题。比如说“一个苹果从天上掉下来”,转化成以Scratch积木的方式说出这个故事的梗概,即以Scratch能够懂的语言来描述:

首先,要有一个蓝天的背景,接着苹果要在Y轴坐标为170-180的天上出现,然后苹果在Y轴上向下每隔0.2秒下落10步,等碰到地面了,还能够停止下落。地板如果比较硬,苹果还会摔成好几块。

完成了吗?嗯,如果是小学生能主动分解并用上述语言表达出来,说明他的Scratch编程已经入门了。

更大的孩子呢,他们可能会想到,苹果从天上掉下来,速度应该是越来越快的,所以不是匀速下落,而是速度不断加快,因为有重力加速度—-能够把重力加速度融入到Scratch编程里面吗?当然可以。

还可以再扩展,如果是一个篮球从天上落到篮球场地面呢?篮球是不是还要反弹多次才能停下来,反弹的速度和高度是不是也和重力有关?

能够举一反三,思考到这个程度的孩子,Scratch编程工具和编程思维都已经登堂入室了,后续不管是自学编程还是其他学科,我认为问题都不大!

可惜的是,大部分人对于这种精确描述有点不适应(应该没有认为不必要的吧!)。计算机编程,老师就是要引导孩子利用编程思维来表达诸如此类生活中的实际问题,带着孩子将上述表达转化成计算机的编程语言,从而培养孩子养成这种解决问题的思维方式。可见,编程是一门培养孩子逻辑思维的高效工具,孩子掌握了编程,也就是掌握了一种解决问题的专业工具和思维方式。

编程没有远离生活,编程来自生活,计算机编程就是用计算编程语言来描述生活!