На главную страницу сайта К. Полякова
Преподавание, наука и жизнь.
 
главная школа вуз наука delphi программы походы автор
 Лента новостей Новости Блог Блог 

 

Учебная среда «Исполнители»

Исполнители

Робот–Blockly

Что это?

Робот-Blockly — это версия исполнителя Робот из системы Исполнители, программа для которого составляется из готовых блоков, как в Scratch. Это избавляет учеников от синтаксических ошибок, которые неминуемо возникают при ручном наборе текстовой программы. Программа подходит для вводного курса алгоритмизации в 5-6 классах.

Автор благодарит А.С. Башлакова (www.klyaksa.net) за полезные замечания и предложения по улучшению среды Робот-Blockly.

Публикации

Новости теперь и в Telegram-канал К. Полякова Telegram-канале

21 ноября 2020 г.
    Исправлена ошибка при определении позиции Робота в задачах с несколькими картами.

17 ноября 2020 г.
    Исправлена критическая ошибка при работе с переменными.
    Теперь во время выполнения программы видно, как Робот проверяет наличие стенок с помощью датчиков.

7 ноября 2020 г.
    Теперь можно делать проверку решения не нескольких вариантах полей. См. примеры в сборниках задач на циклы с условием и условные операторы.

28 октября 2020 г.
    Загрузка и сохранение программ сделаны более удобно.

26 октября 2020 г.
    Исправлена ошибка с повторной загрузкой того же файла.

22 октября 2020 г.
    Добавлены рейтинги решений (от 3 до 5 «звёзд»).

20 октября 2020 г.
    Добавлена возможность сохранять и загружать программы в виде файлов.

Лицензия

Учебная среда Робот-Blockly, включая все исходные тексты скриптов, стилевых файлов и веб-страниц, распространяется под лицензией Apache License, версия 2.0 (см. перевод на русский язык), и не может быть использована иначе как в соответствии с вышеупомянутой лицензией.

Учебная среда Робот-Blockly и методические разработки распространяются по принципу «Как есть» — «As Is». Это означает, что вы используете их на свой страх и риск и автор не несет никакой ответственности за ущерб, причиненный вам лично и вашему компьютеру в результате использования полученных на этом сайте программ и методик.

Все опубликованные ниже материалы могут быть свободно использованы в некоммерческих целях при условии сохранения авторства.

Робот-Blockly

Онлайн-версия Робот-Blockly состоит из нескольких страниц, каждая из которых содержит по 10-12 задач (уровней) возрастающей сложности. На сегодняшний день доступны разработки по следующим темам:

На скриншоте показана одна из задач по теме «Циклы ПОКА».

Приложение Робот-Blockly

Слева вы видите поле Робота, справа — окно для составления программы из блоков. Над окном Blockly показано, сколько блоков ещё можно добавить в программу (количество блоков на каждом уровне ограничено).

Кнопки и над полем Робота говорят о том, что проверка решения будет проведена на нескольких разных полях. С помощью этих кнопок можно по очереди просмотреть все эти поля.

Задача Робота — посадить цветы во все грядки и придти на Базу — в клетку, отмеченную знаком . Для того чтобы посадить цветы на грядке, Робот должен встать на грядку и выполнить команду посади. Робот не может проходить через стенки .

Скорость анимации при движении Робота регулируется движком . Кнопка позволяет выполнять программу в пошаговом режиме.

В верхней части экрана показаны ссылки на все уровни: . Цветными точками отмечены пройденные уровни, а серыми  — уровни, на которых программа запускалась, но задача не была решена. Задача считается решённой, если она правильно отработала на всех заданных полях (в том случае, если их несколько). Синий цвет означает оптимальное решение («пять звёзд»), изумрудный  — хорошее решение (немного длиннее, чем оптимальное; «четыре звезды»); светло-голубой  — правильное решение, в котором слишком много блоков («три звезды»). Справа от списка уровней показано, сколько всего звёзд заработал ученик, решая задачи этого цикла.

Прохождение уровней, а также программы, написанные на каждом из них, запоминаются в пределах сессии. Это значит, что при новом запуске браузера эта информация будет удалена.

Программа в текстовой форме

Программа, составленная из блоков, автоматически переводится на один из поддерживаемых языков: Python, JavaScript, PHP, Dart, Lua. Это позволяет интересующимся детям увидеть, как выглядят программы на «серьезных» языках программирования.

Сохранение и загрузка программ

Для сохранения программы щелкните по кнопке , которая находится над окном программы. Вам будет предложено ввести имя файла и выбрать место его сохранения. Программа сохраняется в формате XML среды Blockly.

Чтобы загрузить программу из файла, щёлкните по кнопке , которая размещена там же. Вам будет предложено выбрать файл на диске.

Оффлайн-версия

Существует оффлайн-версия Робот-Blockly, которую можно запускать на компьютерах без подключения к Интернету.

Скачать! Оффлайн-версия Робот-Bloclky (архив ZIP, 6 669 Кб)  17.11.2020

Создание новых наборов задач

В оффлайн-версии учитель может строить свои собственные наборы задач (см. инструкцию).Для этого нужно внести правки в файл данных соответствующей темы.

Если у вас получился удачный набор задач и вы готовы поделиться им с коллегами, присылайте архив с файлами на электронный адрес kpolyakov@mail.ru с пометкой Робот-Blockly.

Файлы данных размещены в каталоге js и имеют имена robot_<название темы>.js. Например, файл robot_linear.js содержит задания к теме 1 (линейные алгоритмы). Он подключается в заголовке веб-страницы robot_linear.html.

Карта, описывающая поле Робота для каждой задачи, задана как массив из 10 символьных строк, каждая из которых содержит по 10 символов. Например, для редактирования задачи уровня 1 нужно найти в начале файла данных слова Level 1 и исправить строки карты.

...
['..........',  // Level 1
 '..........',
 '.......b..',
 '..........',
 '..........',
 '..........',
 '..........',
 '..0.......',
 '..........',
 '..........' ],
...

Точка обозначает пустую клетку, w — стену, x — грядку, p — клумбу с цветами. Положение Робота задаётся цифрой, которая зависит от направления: 0 — Робот смотрит на север, 2 — Робот смотрит на восток, 4 — Робот смотрит на юг, 6 — Робот смотрит на запад.

Подробно про составление своих наборов задач можно прочитать в руководстве: Как создать свой набор задач для Робота-Blockly?

Ссылки

  1. developers.google.com/blockly — среда Blockly для созданий визуальных редакторов программ (сайт разработчиков);
  2. github.com/google/blockly — репозиторий разработчиков Blockly на GitHub;
  3. github.com/google/blockly/releases — версии Blockly для скачивания;
  4. blockly-demo.appspot.com — примеры, демонстрирующие возможности среды Blockly;
  5. blockly.games — игры на Blockly;
  6. groups.google.com/g/blockly — форум разработчиков на Blockly;
  7. github.com/google/blockly-games — репозиторий Blockly Games на GitHub;
  8. github.com/google/blockly-samples — репозиторий Blockly Samples (примеры) на GitHub;
  9. github.com/google/blockly-devtools — репозиторий Blockly DevTools (инструменты для разработчиков) на GitHub;
  10. github.com/google/blockly-android — репозиторий Blockly для Android на GitHub;
  11. github.com/google/blockly-ios — репозиторий Blockly для iOS на GitHub;
  12. blockly.ru — образовательный портал для будущих программистов: программирование на основе Blockly;
  13. think.cs.vt.edu/blockpy — среда, которая позволяет программировать на языке Python как в блочной, так и в текстовой форме;
  14. neil.fraser.name/blockly — документация по Blockly (автор — Neil Fraser);
  15. neil.fraser.name/software/JS-Interpreter — интерпретатор JavaScript (автор — Neil Fraser);
  16. www.youtube.com/watch?v=s2_xaEvcVI0 — инструмент Block Factory для создания новых блоков (автор — Neil Fraser);
  17. blocklycodelabs.dev — сайт Blockly Codelabs (статьи по разработке в Blockly);
  18. www.youtube.com/watch?v=bKMRhUoM0Uc — пример создания нового блока (автор — Ruth Leopold);
  19. www.youtube.com/watch?v=lPVJjQbEeN0 — руководство по Blockly, часть 1 (автор — Ruth Leopold);
  20. www.youtube.com/watch?v=YjGoDh-Qqkg — руководство по Blockly, часть 2 (автор — Ruth Leopold);
  21. www.youtube.com/watch?v=wDJua9hgyZM — как использовать блоки Blockly в своем приложении (инструкции от Google);
  22. www.youtube.com/watch?v=nXP7OKDCk4Y — Tips for Creating a Block Language with Blockly;
  23. developers.google.com/blockly/reference — подробный справочник по Blockly;
  24. www.youtube.com/watch?v=1w3SwzWrWnk — Blockly on Mobile Devices.
  25. oucc.uk — The Oxford University Computing Challenge: инструкции по Blockly.
  26. Blockly learning 1: work area, block, toolbox (www.programmersought.com).
  27. Blockly development 2: create workspace (www.programmersought.com).
  28. Blockly Development 3: create toolBox (www.programmersought.com).

Valid XHTML 1.0 Transitional

© 2000-2020 К. Поляков
 

В Контакте