我7岁的孩子想学编程? (他的想法不是我的,而且他在外面的世界做事。所以,从这个角度来看,我并不太担心。他甚至从我的办公室拿出一本游戏编程书在睡觉时阅读。 )有一天,我们坐下来写了一个非常简单的猜数字游戏(你选了 8,它是正确的,其他都是错误的)。
一切顺利,但他根据该语言的语法提出了许多问题。 (我碰巧选择了 Java,因为我当时打开了 IDE。)我教授高等教育入门编程课程,所以这对我来说有点大开眼界(大多数高中毕业的学生都不愿意问问题)我真的必须弄清楚,如何向 7 岁的孩子解释语法?
显然,任何 C 类型语言都会遇到相同的问题,大多数“语言”也是如此。我看了看吱吱声,但决定暂时不使用它。我查看了 Alice 的环境,但也不喜欢它。
从身体角度来看,他可以轻松使用键盘/鼠标,并且可以相对轻松地组装乐高积木(因此遵循指示并获得有趣的结果对他来说很有效)。我可以使用 Lego NXT,但他还太年轻(即使使用提供的图形环境,也需要很长时间才能看到工作结果)。
理想情况下,我希望这段经历能帮助他建立对数学和逻辑的信心(如果 7 岁的孩子有逻辑:-)。
我记得小时候使用过海龟图形/标志。我倾向于这个,但想知道是否还有其他想法或者是否有人可以推荐一个好的徽标环境?
Edit 1:
标志效果很好。我需要教他角度的概念(90 度、180 度)。不幸的是,他们在学校并没有真正做除法,所以角度可能很有趣......
首先画一个正方形:
FORWARD 50
RIGHT 90
FORWARD 50
RIGHT 90
FORWARD 50
RIGHT 90
FORWARD 50
RIGHT 90
稍后我会进入循环:
REPEAT 4
[
FORWARD 50
RIGHT 90
]
然后是变量:
make "length 50
REPEAT 4
[
FORWARD :length
RIGHT 90
]
这效果非常好。几乎没有语法,7岁孩子就能轻松记住词汇,并且可以立即反馈。
Edit 2:
嗯,这是成功的,因为当我不在房间时,他能够编写一个简单的程序(还没有循环)。实际上效果很好——我们出去拿了方格纸和量角器,我们算出90度角,他做了一堆正方形,把一个正方形变成了一个长方形,然后看看他哪里出错了,如何调试它。我向任何对编程感兴趣的 7 岁孩子推荐这种方法。我想我也会向我的专上学生推荐它(!)