Scratch desktop

Scratch — это язык программирования на основе блоков, созданный MIT для обучения программированию детей, и он работает. Целое поколение программистов начало здесь. Но в какой-то момент большинство обучающихся Scratch упираются в одну и ту же стену: палитра блоков заканчивается. Они хотят управлять реальным оборудованием, выпустить реальное приложение или перейти на текстовый язык программирования, а Scratch не может их туда следовать. Вот семь альтернатив Scratch для десктопа, которые либо полностью его заменяют, либо подхватывают там, где Scratch заканчивается.

Быстрое сравнение

ПриложениеЛучше всего дляБесплатный планНачальная ценаОтличительная особенность
Snap!Дети постарше, готовые к настоящим концепциям CSДа, без ограниченийБесплатноФункции и списки первого класса
mBlockДети с наборами оборудованияДаБесплатно + стоимость оборудованияБлоки, взаимодействующие с Arduino
AliceРассказывание историй в 3DДаБесплатноПолные 3D-миры и анимация
App InventorДети, которые хотят выпустить приложение для телефонаДаБесплатноПубликует в Google Play
TynkerСтруктурированная учебная программа для школОграниченная пробная версия$60/годУправляемые курсы и геймификация
Kodu Game LabДизайн игр только для WindowsДаБесплатноПростой редактор 3D-миров
Blockly GamesОбучающиеся, желающие прогрессировать в решении головоломокДаБесплатноУроки-головоломки небольшого размера

Почему люди уходят из Scratch

Самая частая причина: дети перерастают его. Палитра блоков Scratch заканчивается примерно тем, что MIT разработал для восьмилетних детей. Обучающиеся, которые хотят писать пользовательские функции, работать с реальным оборудованием или выпустить приложение на телефон, встречают стены, которые дополнения сообщества только частично преодолевают.

Вторая: Scratch требует онлайн-использования для полного функционала. Приложение Scratch Desktop работает в автономном режиме, но обмен проектами сообщества (вся социальная сторона Scratch) требует веб-версии. На школьных сетях, которые блокируют scratch.mit.edu, учителя теряют совместную функцию, которая делает Scratch интересным.

Третья: нет встроенной программы обучения. Сам Scratch — это холст; MIT не поставляет структурированные уроки. Учителя собирают учебные программы из ScratchEd, YouTube и сторонних поставщиков. Когда класс нуждается в пошаговом курсе с оценками, инструменты вроде Tynker или Code.org подходят лучше.

Четвёртая: нет клиента Linux Desktop. Scratch Desktop поддерживает Windows, macOS и ChromeOS, но не Linux. Школы, работающие на образах на основе Ubuntu, должны использовать веб-редактор или найти альтернативу.

1. Snap! — Лучше всего для детей постарше, готовых к настоящей информатике

Snap! — это старший брат Scratch, созданный в UC Berkeley с той же парадигмой перетаскивания блоков, но с концепциями, необходимыми студентам информатики: функции первого класса, операции высшего порядка, continuations и списки как значения первого класса. Если Scratch — начальная школа, то Snap! — старшая школа.

Где это отстаёт: интерфейс менее отполирован, а сообщество меньше. Спрайты и звуки не имеют той же уникальности, что и библиотека активов Scratch.

Цены:

Переход со Scratch: Snap! может импортировать проекты Scratch 2.0. Импорты Scratch 3.0 требуют ручного экспорта через SB3 и небольшой очистки.

Загрузка: snap.berkeley.edu

Вывод: Выберите Snap!, когда ваш программист Scratch спросит, почему он не может создать собственные пользовательские блоки. Пропустите это для новичков до 10 лет.

2. mBlock — Лучше всего, когда у детей есть Arduino или наборы робототехники

mBlock — это Scratch, переосмысленный для мира оборудования. Палитра блоков отбрасывает абстракции спрайтов Scratch и добавляет блоки, которые взаимодействуют с платами Arduino, micro:bit, роботами Makeblock и универсальными модулями Bluetooth. Блоки генерируют код Arduino C, который ученик может проверить и изменить.

Где это отстаёт: Без оборудования это более слабый Scratch. Сгенерированный код Arduino функционален, но не идиоматичен, что расстраивает опытных в C родителей, помогающих своим детям.

Цены:

Переход со Scratch: mBlock 5 импортирует файлы Scratch .sb3 с сохранением целостности проектов на основе спрайтов. Блоки оборудования, очевидно, не переносятся со Scratch.

Загрузка: mblock.cc

Вывод: Выберите mBlock, когда у ребёнка под ёлкой есть набор Arduino. Пропустите это, если у вас нет оборудования и нет планов его покупать.

3. Alice — Лучше всего для рассказывания историй в 3D

Alice — это среда блочного программирования Carnegie Mellon, сосредоточенная на 3D-анимации и повествовании. Дети создают миры с персонажами, окружением и камерами, а затем программируют поведение. Аспект 3D привлекает внимание, которое плоские сцены Scratch с трудом удерживают у детей постарше.

Где это отстаёт: более крутая кривая обучения. Alice 3 — это полное приложение Java, которому нужен приличный компьютер для гладкого запуска. Переход от блоков к Java мощный, но слишком много для маленьких новичков.

Цены:

Переход со Scratch: Нет импортера. 2D-парадигма спрайтов Scratch не переводится на 3D-сцены Alice.

Загрузка: alice.org

Вывод: Выберите Alice, если ваш ученик больше интересуется кинофильмами и историями, чем играми. Пропустите это для маленьких новичков.

4. App Inventor — Лучше всего для детей, которые хотят выпустить приложение для телефона

App Inventor был создан в Google и сейчас поддерживается MIT. Он основан на блоках, как Scratch, но результат — это реальное приложение Android, которое устанавливается на реальный телефон. Дети проектируют интерфейс, подключают кнопки к блокам, добавляют датчики и получают APK.

Где это отстаёт: сторона десктопа — это редактор блоков (через браузер или оболочку Electron); цель — только Android. Поддержка iOS поступила недавно, но отстаёт. Интерфейс плотнее, чем Scratch.

Цены:

Переход со Scratch: Нет импортера. Парадигмы слишком отличаются.

Загрузка: appinventor.mit.edu

Вывод: Выберите App Inventor, когда ваш ребёнок спросит, как создать приложение для телефона. Пропустите это, если он всё ещё наслаждается сосредоточением на анимации Scratch.

5. Tynker — Лучше всего для структурированных школьных учебных программ

Tynker обёртывает блочное программирование, похожее на Scratch, в полную программу для классов K-12 с управляемыми уроками, значками и панелями управления для учителей и родителей. Содержание переходит от блоков уровня Scratch к Python и JavaScript. Приложение для десктопа работает на Windows и macOS через оболочку Electron.

Где это отстаёт: не бесплатно для реального использования. 14-дневная пробная версия даёт доступ к первым нескольким курсам, затем срабатывает платная стена. Качество контента варьируется по разделам.

Цены:

Переход со Scratch: Tynker импортирует файлы .sb3. Верность приличная; некоторые облачные переменные и пользовательские блоки могут не переводиться.

Загрузка: tynker.com

Вывод: Выберите Tynker, когда родитель или учитель хочет готовую программу обучения. Пропустите это, если ребёнок уверен в себе, а Scratch работает.

6. Kodu Game Lab — Лучше всего для дизайна 3D-игр только для Windows

Kodu Game Lab была блочной 3D-игровой программой Microsoft Research. Это более ограничено, чем Scratch (вы создаёте мир, размещаете персонажей, провожаете поведение), но 3D-результат впечатляет детей так, как 2D не может. По-прежнему доступна как бесплатная загрузка для Windows и популярна в школах со старыми машинами Windows.

Где это отстаёт: только Windows. Разработка замедлилась; последний значительный выпуск был много лет назад. Интерфейс устарел.

Цены:

Переход со Scratch: Нет импортера. Другая парадигма.

Загрузка: Kodu Game Lab (Microsoft Research)

Вывод: Выберите Kodu, когда в классе есть старые машины Windows, а дети хотят 3D. Пропустите это на Mac или Linux.

7. Blockly Games — Лучше всего для прогрессирования обучения на основе головоломок

Blockly Games — это коллекция самостоятельных головоломок Google (Maze, Bird, Pond), которые преподают конкретные концепции программирования. Головоломки работают в любом браузере десктопа и блокируют прогресс в решении каждого уровня, что превращает обучение в структурированную игру.

Где это отстаёт: не полный холст. Когда дети заканчивают головоломки, нечего исследовать. Лучше всего использовать как дополнение.

Цены:

Переход со Scratch: неприменимо. Blockly Games — это автономные головоломки.

Загрузка: blockly.games

Вывод: Выберите Blockly Games как закуску или сеанс в воскресенье днём. Пропустите это, если ученик хочет создавать свои собственные проекты.

Как выбрать

Выберите Snap!, если ваш программист Scratch превзошёл потолок Scratch. Это естественный следующий шаг и остаётся бесплатным.

Выберите mBlock, когда оборудование на столе. Наборы Arduino и micro:bit превращают абстрактное кодирование в мигающие светодиоды.

Выберите Alice для ребёнка, который предпочитает рассказывание историй играм. Редактор 3D-миров меняет то, на что похоже программирование.

Выберите App Inventor, в момент, когда произойдёт “я хочу создать приложение для своего телефона”. Это сокращает цикл от блока к APK к чему-то, что семья может установить.

Выберите Tynker, если вы родитель или учитель, который не может разработать программу обучения с нуля и нуждается в том, чтобы кто-то другой это сделал.

Выберите Kodu для старых классов Windows с детьми, заинтересованными в дизайне игр.

Добавьте Blockly Games к любому из вышеперечисленных в качестве разминки.

Остаться на Scratch, если программист всё ещё моложе 10 лет, всё ещё наслаждается моделью спрайтов и костюмов и ещё не просит оборудование или пользовательские функции. Сообщество Scratch и курируемый контент не имеют себе равных ниже этого порога.

Часто задаваемые вопросы

Что идёт после Scratch? Snap! — прямой следующий шаг для глубины концепции. mBlock и App Inventor для развёртывания оборудования или приложений. Alice для 3D-повествования. В конце концов все обучающиеся переходят на текстовый язык: Python, JavaScript или Lua в зависимости от цели.

Snap! лучше, чем Scratch? Для обучающихся в возрасте 12 лет и старше, как правило, да. Snap! вводит функции высшего порядка, списки первого класса и continuations, которые являются реальными концепциями CS, которые Scratch упрощает. Для младших детей полировка и сообщество Scratch делают его лучше подходящим.

Могу ли я использовать Scratch в автономном режиме на Linux? Не официально. Scratch Desktop поддерживает Windows, macOS и ChromeOS. Пользователи Linux запускают Scratch в браузере или используют неофициальные сборки сообщества. mBlock и Snap! оба имеют первоклассную поддержку Linux.

Какая лучшая альтернатива Scratch для школ? Tynker для структурированной программы с панелями управления учителя. Курсы на основе блоков Code.org для бесплатной программы обучения. mBlock для классов с наборами робототехники. Snap! для продвинутой информатики.

Можно ли экспортировать проекты Scratch в другие приложения? Некоторые. Snap! импортирует проекты Scratch 2.0 и 3.0. Tynker импортирует .sb3. Большинство других альтернатив требуют восстановления с нуля (концепция, не приложение).