Scratch, Blockly, MakeCode: в чём разница?

Все три — блочное программирование. Scratch нацелен на экранные истории, MakeCode — на физические платы, а Blockly — движок, на котором построены другие редакторы. Выбирайте по цели.
Scratch, Blockly и MakeCode — всё это инструменты блочного программирования: ваш ребёнок стыкует блоки-пазлы вместо того, чтобы набирать строки текста. Разница в том, ради чего каждый из них создавался. Scratch нацелен на экранные истории и игры, MakeCode — на физические платы и датчики, а Blockly — движок, поверх которого построены многие другие блочные редакторы. Как только вы понимаете цель, выбор становится простым.
Scratch: сделан для историй, игр и анимации
Scratch из MIT — то, с чего начинает большинство детей. Блоки управляют спрайтами на сцене, так что ребёнок может подвигать персонажа, проиграть звук или вести счёт. Под поверхностью он учит настоящим идеям, общим для всех языков: циклам, событиям, переменным и условиям. Покупать и устанавливать ничего не нужно, потому что всё работает в браузере.
Для первого знакомства с программированием, примерно с 8 до 12 лет, Scratch трудно превзойти. Расплата в том, что Scratch живёт на экране. Он не покрутит мотор и не считает датчик температуры, так что для робототехники он подходит плохо.
Blockly: движок, а не приложение
Blockly — библиотека Google для создания блочных редакторов. Сама по себе она не продукт, за который садится ребёнок. Это инструментарий, которым разработчики делают такие продукты. Многие блочные интерфейсы, которые вам встречаются, включая массу аппаратных и школьных инструментов, внутри устроены на Blockly.
Почему это важно родителю? Потому что знание того, что инструмент «использует Blockly», говорит о внешнем виде и ощущениях (вы таскаете блоки), но не о назначении. Два инструмента на Blockly могут решать совершенно разные задачи: один делает анимации, другой управляет роботизированной рукой. Судите об инструменте по тому, на что он нацелен, а не по движку, на котором он работает.
MakeCode: блоки, которые говорят с железом
MakeCode от Microsoft соединяет блоки с физическими устройствами: небольшими микроконтроллерными платами со светодиодами, кнопками и датчиками. Вы собираете программу из блоков, а затем прошиваете её в плату, которая работает сама по себе, вдали от компьютера. Чаще всего он ещё и позволяет ребёнку переключаться между блоками и текстом, обычно JavaScript или Python, что делает его естественным мостом по мере взросления. Именно эта категория важна, когда цель — робототехника, а не анимация.
Наша собственная плата sheenbot∞ находится в этом же пространстве. Для неё можно написать блочный код и посмотреть, как он работает в браузерном симуляторе, ещё не притрагиваясь к железу, — это удобно, когда с трафиком или устройствами туго. Попробуйте блочный canvas, чтобы увидеть, как блоки физических вычислений ведут себя на виртуальной плате.
Выбирайте по цели, а не по бренду
Название бренда значит куда меньше, чем соответствие задаче. Все три учат одним и тем же базовым понятиям, поэтому ребёнок, освоивший циклы в Scratch, уже понимает циклы в MakeCode. Подбирайте инструмент под то, что ваш ребёнок на самом деле хочет сделать:
- Цель — истории, игры или искусство: начинайте со Scratch.
- Цель — роботы, датчики или носимые устройства: берите аппаратный редактор вроде MakeCode или блочное программирование для платы sheenbot∞.
- Ребёнок готов к тексту: выберите инструмент, показывающий блоки и JavaScript или Python рядом.
- Бюджет ограничен: начните с экрана, ведь симуляторы ничего не стоят и учат той же логике.
- Младше 8 лет: начните с более простых блоков на пиктограммах, прежде чем переходить к полноценному Scratch.
Вывод
Не мучайтесь вопросом, какой блочный инструмент «лучший». Подберите инструмент под то, что ваш ребёнок хочет собрать, и позвольте ему переходить между инструментами по мере смены целей. Навыки переносятся, так что ничего не пропадает зря. Если хотите начать под руководством, наша академия ведёт занятия по блочному программированию в Кейптауне, а бесплатное пробное занятие можно записать, чтобы понять, какой стиль подходит вашему ребёнку, прежде чем на что-то соглашаться.



