最近斌头老师在给新人们强调 计算思维的训练 ,我觉得也许这个东西可以关注一下。
在网易的哈佛 CS50 公开课视频的第一节课里,提到了 Scratch 这个门槛极低的编程工具,通过它可以编程序操作角色实现动画、游戏等等,甚至还可以操作乐高机器人等等设备实现与外界的互联。
前两天恰好聊起了小学生学编程的话题,想起了这个东西,再次试着在 官网 的编辑器玩了一下,不得不说,它的设计真的是十分直观和简洁,隐藏了那些涉及具体机器实现的复杂细节,下面是一点点例子:
- 结构化程序的顺序、选择、循环结构:

- 变量概念与列表数据结构(想想,数组、链表不也就是在做这个事情)

- 子程序(函数)

- 乐高等外部设备编程接口


子进程,fork 的思想

发布-订阅 模式,事件广播

我们学的语言,也是思维的具体的表达方式~
通过它来建立对编程的一些核心的思想的直观印象,我觉得是一种不错的方式。