Использование Switch Blocks для перехода от блочного к текстовому кодированию в VEXcode VR

Для доступа к Switch Blocks в VEXcode VR необходима лицензия VEXcode VR Premium. См. эту статью для получения дополнительной информации о том, как получить доступ к блокам переключения в VEXcode VR.

В то время как начинающие программисты более склонны использовать блочный интерфейс, более продвинутые студенты могут быть заинтересованы в программировании своего робота с использованием текстового языка программирования, например Python. Исторически этот переход от блочного к текстовому программированию может ощущаться студентами как изучение совершенно нового языка, в котором они не могут применять логикукоторую они ранее изучали с помощью блоков.1 Switch Blocks в VEXcode VR был разработан для облегчения перехода от блочного к текстовому программированию. В этой статье мы расскажем, как использовать блоки переключателей в VEXcode VR, а также рассмотрим сценарий для учебного занятия, чтобы объяснить и проиллюстрировать эти функции в контексте.

Блок переключения, отображающий эквивалентный блочный и текстовый код в VEXcode VR.

Использование блоков переключателей

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


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

Это позволяет учащимся продолжать работать с логической цепочкой блочной программы, где они могут физически видеть такие вещи, как обтекание цикла другими блоками, а также начинать самостоятельно экспериментировать с текстовыми командами. После преобразования блоков в Switch учащиеся смогут легко изменять параметры и начнут понимать синтаксис текстовой команды. В этом разделе мы покажем вам, как студент использует Switch, а также объясним, как можно использовать эти блоки в проекте VEXcode VR.

Switch доступен с лицензией VEXcode VR Premium. Узнайте больше о подписках VEXcode VR здесь.

Получив лицензию, как получить доступ к Switch, используя информацию изстатьи.

Переключение в классе

Остин — студент, который уже несколько лет занимается программированием с использованием блоков. Хотя некоторые ученики в классе все еще являются новичками в программировании, Остин хочет узнать больше о Python и о том, как перейти к программированию VR-робота с использованием текста. Г-жа Хантер, преподаватель информатики, заметила, что Остин готов к дополнительным трудностям, и представила Switch, чтобы помочь Остину в обучении и познакомить его с текстовым кодированием. Г-жа Хантер продемонстрировала некоторые базовые функции, такие как преобразование блока и открытие справки для получения дополнительной информации о команде Switch Python для каждого из блоков. 

Сегодня мисс Хантер дала классу задание очистке кораллового рифа. Она использует VEXcode VR для своих занятий по программированию, поскольку знает, что может дифференцировать свое обучение и охватить учеников с разным уровнем знаний программирования, используя одни и те же упражнения. Переключение режима помогает таким студентам, как Остин, облегчить эту дифференциацию. Цель задания «Уборка кораллового рифа» — собрать как можно больше мусора, прежде чем разрядится батарея VR-робота. Понимая сложность задачи и зная, как писать базовые алгоритмы, Остин создает проект VEXcode VR, который использует датчик Down Eye для определения границы игровой площадки и движения задним ходом, чтобы не повредить кораллы.

Виртуальная рабочая область VEXcode с блочными командами для программирования виртуального робота.

Преобразование отдельного блока в коммутатор

Конвертировать 1 блок


Теперь, когда у Остина есть проект, который он протестировал и подтвердил его работоспособность, следующим шагом станет преобразование блока в Switch, чтобы начать изучать Python. 


 

Блоки можно преобразовать в Switch, длительно нажав или щелкнув правой кнопкой мыши по блоку, а затем выбрав опцию «Преобразовать в блок Switch», как показано в этом видео.

Теперь Остин видит, что блок [Drive for] превратился в команду Python drive_for. После завершения преобразования Остин управляет проектом, чтобы убедиться, что он по-прежнему работает так, как задумано. После завершения преобразования Остин хочет узнать больше о команде drive_for. Открыв справку блока [Drive for], Остин может установить связи между параметрами блока и командой Python.

Использование справки для получения дополнительной информации о командах Switch Python

Открыть справку


Чтобы просмотреть информацию о команде Switch Python в справке, Остин открывает окно справки и выбирает блок [Drive for], затем прокручивает страницу вниз, как показано в этом видео. 

Мисс Хантер зарегистрировалась и увидела, что Остин узнал больше о блоке [Drive for]. Она предложила ему применить полученные знания при преобразовании блока и вводе текста в новый блок. Она показала, как перетащить блок Switch, и попросила Остина попробовать ввести в него команду turn_for. Остин открывает справку по блоку и делает заметку о структуре команды. 

Ввод блока переключателей

Добавить блок


Зная команду Python из справки, Остин хочет ввести ее непосредственно в блок Switch. Перетащив блок [Switch Stack] из панели инструментов, Остин добавляет его над блоком [Turn for], как показано в этом видео. 

Введите блок


Затем Остин с помощью курсора выбирает блок Switch и начинает вводить команду Python turn_for , как показано здесь. 


 

После ввода новой команды и проверки соответствия параметров исходному блоку, блок [Turn for] можно удалить, как показано в этом видео. 

Мисс Хантер приходит проверить, как идут дела у Остина. Она видит проект Switch и просит показать ему запуск, чтобы убедиться, что команды введены правильно. Убедившись в работоспособности проекта, она демонстрирует еще одну функцию — многострочные блоки.

Копировать и вставить


Блок [Switch Stack] может содержать несколько строк кода. Остин копирует текст turn_for и вставляет его в блок выше, как показано в видео здесь.

 

Остин видит, что нажатием клавиши «enter» или «return» на клавиатуре можно добавлять дополнительные строки в блок, и продолжает добавлять команды Python.

Чувствуя себя мастером команд Drivetrain в Python, Остин распечатывает сертификат и сохраняет проект для следующего раза.

Преобразование стеков в коммутатор

Позже в этом учебном году мисс Хантер возвращается к занятию по очистке коралловых рифов и предлагает учащимся либо набрать более высокий балл, либо использовать текстовое кодирование. Пока Остин использовал команды Drivetrain в блоках Switch, это занятие — возможность узнать больше об эквивалентах блоков «C» и логических значений в Python. 

Конвертировать обертку


Остин нажимает и удерживает или щелкает правой кнопкой мыши по блоку [If then else] и выбирает «Преобразовать оболочку и содержимое в блок-переключатель». Это преобразует цикл и его содержимое в один блок Switch, как показано в этом видео.


 

Обратите внимание на отступ после завершения преобразования. Чтобы несколько команд в одном блоке Switch работали правильно, они должны иметь правильный отступ.

Дополнительные блоки переключателей

Хотя Остин использовал исключительно блок [Switch Stack], доступны и дополнительные блоки Switch. Остин готов сдать улучшенный проект по очистке кораллового рифа, но вместе с мисс Хантер планирует попробовать новый вид блока Switch, подобный перечисленным ниже, на следующем занятии.

Блоки переключателей имеют ту же форму, что и другие блоки. В представленной здесь таблице показано сравнение формы блока, его значения и блоков Switch того же типа.

Форма блока Описание Примеры блоков Примеры переключения
Блоки шляп Начните складывать блоки друг на друга и придайте им форму, позволяющую прикрепить блоки под ними. Виртуальная рабочая область VEXcode с блоком switch, демонстрирующим эквивалентные блоки и команды Python для поворота трансмиссии в тестовой среде. Примеры использования блоков hat, stack, Boolean и reporter с блоками switch в VEXcode VR.
Стек блоков Выполнять основные команды. Они имеют форму, позволяющую устанавливать их над или под другими штабельными блоками. Примеры блоков switch для типов блоков hat, stack, boolean и reporter в VEXcode VR Примеры блоков hat, stack, Boolean и reporter с соответствующими блоками switch в VEXcode VR
Булевы блоки Возвращает условие как «истина» или «ложь» и помещается внутрь любых блоков с шестиугольными (шестисторонними) входами для других блоков. Виртуальная рабочая область VEXcode с панелью инструментов Blocks и областью кодирования для создания проекта с использованием блоков. Примеры блоков hat, stack, Boolean и reporter с их эквивалентами в блоке switch в VEXcode VR.
Репортерские блоки Сообщайте значения в виде чисел и помещайте их внутрь любых блоков с овальными входами для других блоков. Примеры блоков switch, объединяющих блочный и текстовый код в VEXcode VR. Палитра блоков VEXcode VR с категориями блоков hat, stack, Boolean и reporter, используемых в блоках switch.
C-блоки Зацикливайте блоки внутри них или проверяйте, является ли условие истинным или ложным. Они имеют форму, позволяющую прикреплять штабелируемые блоки сверху, снизу или внутри них. Примеры форм блоков VEXcode VR: hat, stack, Boolean и reporter, а также соответствующие формы блоков switch. Примеры блоков switch для блоков hat, stack, Boolean и reporter в VEXcode VR Примеры блоков switch, демонстрирующие преобразование форм блоков в текстовый код. Проект VEXcode VR, демонстрирующий блоки-переключатели, используемые для объединения блочного и текстового программирования в рабочем пространстве.

Собираем все вместе

Наблюдая, как Остин тестирует ввод различных команд Python в блоках Switch, мисс Хантер увидела, как Switch позволяет ее ученикам выстраивать собственное обучение. До начала занятий у всех ее учеников был разный опыт программирования, а задания в VEXcode VR позволяют им разрабатывать программы на своем уровне. Некоторые студенты пишут код исключительно на Blocks, некоторые на Python, а другие, как Остин, используют Switch для перехода к программированию на Python. В течение следующих нескольких месяцев Остин перешел на программирование исключительно на Python, применяя знания, полученные при работе с Switch, чтобы сделать переход от блоков к тексту гораздо проще и плавнее. 

Switch Blocks в VEXcode VR позволяет учителям, таким как г-жа Хантер, выступать координаторами обучения, пока учащиеся с разным уровнем владения программированием выполняют одну и ту же задачу. В то же время студенты, такие как Остин, чувствуют себя вправе попробовать новые методы решения задач по кодированию, переходя от блоков к тексту с помощью Switch Blocks в VEXcode VR.


1Вайнтроп, Дэвид и Ури Виленски. «Как блочные, текстовые и гибридные блочно-текстовые методы формируют практику программирования для начинающих».  Международный журнал взаимодействия ребенка и компьютера 17 (2018): 83-92

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: