scratch3.0 + micro:bit
文章目录
scratch官方称,在scratch3.0发布的时候会携带micro:bit插件,这意味这你可以轻松将scratch延伸到物理世界。
两种硬件编程风格
在少儿编程/硬件编程教育领域,硬件编程有两种风格,我将这两种风格分别称为灌入式
和交互式
scratch3.0为我们带来的micro:bit硬件编程,采用交互式
风格。
我相信就少儿编程教育而言,交互式
远远优于灌入式
,我最近正在写一篇文章谈论这个话题(《两种硬件编程风格的比较》)
我准备讨论这两种编程风格给学习者的编程体验 以及心理状态状态所带来的影响。所谈论的很多内容,在编程语言的发展历史中都被反复讨论过。
下边我们来简单看看两个阵营都有哪些代表性项目。
在硬件图形化编程项目中,灌入式
阵营有名的项目包括:
- makecode
- PythonEditor
- mixly
- 以及国内大多数的其他项目(makeblock、mcookie…)
事实上,所有传统的硬件编程都是灌入式的,
交互式
阵营的项目有:
交互式
阵营近期还将迎来下边两个项目:
如果你尝试过Cozmo code lab的编程体验,你就知道交互式
可以做到何等优秀。Cozmo几乎在任何方面都一骑绝尘。
灌入式
和交互式
带来截然不同的编程体验,对此有兴趣的同学,可以等我近期的文章,我对这个话题十分感兴趣,也欢迎你来信讨论
scratch3.0 + micro:bit尝鲜
尽管scratch3的micro:bit插件还没有正式发布,但目前我们以及可以尝鲜了
注意: 目前只支持macOS、chrome OS、安卓三个平台下的 Chrome浏览器,暂不支持Windows系统 (因为用到web bluetooth)
下载并烧入固件
下载scratch-microbit-firmware-combined.hex
将scratch-microbit-firmware-combined.hex拖到microbit里
连接
打开系统蓝牙
点击连接蓝牙:
连接完成之后,我们就可以开始在scratch3.0中为microbit编程了
由于是交互式
风格,我们可以轻松做出互动式的体感游戏之类富有想象里的东西。
开始编程
首先在extensions中选择micro:bit扩展:
下边让我们写个简单的程序,用micro:bit来控制scratch3.0中的人物左右移动:
让我们来看看实际效果:
技术视角
scratch3.0的micro:bit采用web-bluetooth。这是一种激进的策略,web-bluetooth目前的跨平台兼容并不好,各个平台的进展可以参考这儿,目前只在macOS、chrome OS以及安卓上可以正常使用,最终scratch3.0稳定版中micro:bit extension是否会采用web-bluetooth的连接策略还不得而知(但他们显然偏好这种方式,他们自己准备推出的硬件:ScratchBit也采用这种策略)。官方可能采用的另一个策略是microbit-extension,这种方式的跨平台兼容性好,原理上和scratch3-adapter相同
和scratch官方一样,我也相信web-bluetooth是硬件编程教育的未来,采用这种方式,只需要你有一个chrome浏览器,就可以直接操控硬件!
我的scratch3-adapter采用了比较折中的策略,没有强行要求使用web-bluetooth,而是把连接的策略推迟给开发者,让他们自行选择。
参考
文章作者 种瓜
上次更新 2018-07-01