Информация о классе
Оценки: 8–12 (для участия в занятии учащиеся должны быть не младше 13 лет)
Длительность урока: один час
Рекомендуемое средство: творческий режим Fortnite
Класс/среда обучения: поддерживающее Fortnite устройство с подключением к интернету (по одному на каждого учащегося). Компьютерный класс или передвижной столик для ноутбука создадут все необходимые условия.
Связь с автором
Авторы: Steven Isaacs и Brian Dickman
Электронная почта: [email protected] | [email protected]
Twitter: @mr_isaacs | @cleverlike
LinkedIn: www.linkedin.com/in/steve-isaacs | www.linkedin.com/in/cleverlike
ОПИСАНИЕ КЛАССА/СРЕДЫ ОБУЧЕНИЯ
Этот урок предназначен для Hour of Code в рамках Недели информатики.
Урок можно пройти отдельно или интегрировать с другими активностями в рамках большого проекта.
Стив Айзекс — менеджер образовательных проектов в Epic Games. Он помогает преподавателям и студентам наладить использование в классе таких инструментов, как Unreal Engine, творческий режим Fortnite и Twinmotion. Прежде чем перейти в Epic, Steve преподавал игровой дизайн и разработку, широко используя в обучении практические задания и личный выбор. Данный формат позволяет ученикам по-разному достичь результатов обучения, которые зависят от их интересов, доступного контента и опций.
Brian Dickman изучал информатику и работает в игровой студии, которая создаёт развлекательный и образовательный контент в популярных видеоиграх.
Обзор урока
Вы никогда не задумывались о том, как именно видеоигры считают заработанные игроками очки?
Если вы когда-нибудь играть в Pac-Man, то наверняка пытались поставить рекорд. Вы зарабатывали очки, собирая точки, и получали бонусные очки за фрукты. Когда призраки становились синими, вы гонялись за ними, так как каждый последующий съеденный враг приносил больше очков, чем предыдущий. Во многих играх есть механизм подсчета очков, который является их неотъемлемой частью.
Подсчет очков в играх обрабатывается с помощью переменных. Переменная устанавливается в самом начале и меняется на протяжении всей игры, основываясь на действиях, способных изменить счет.
На этом занятии учащиеся создадут систему подсчета очков с использованием переменных. Это лишь один из многих примеров использования переменных в программировании.
Желаемые результаты
Каких результатов достигнут учащиеся в процессе обучения?
ВАЖНЫЕ ВОПРОСЫ И КЛЮЧЕВЫЕ ИДЕИ
Можно ли преподавать основы информатики в рамках конструктивной деятельности вместо того, чтобы изучать синтаксис с позиции очередного навыка?
Равноценно ли изучение таких основ информатики, как функции в творческом режиме Fortnite, знакомству с ними в полноценной среде программирования?
Можно ли преподавать основы информатики с помощью механик игры?
Захотят ли учащиеся активнее изучать информатику, если обучение будет проходить в игровой среде?
Учебные занятия
Введение в переменные
В программировании переменная — это значение, которое может изменяться в зависимости от условий или информации, передаваемой программе. Обычно программа состоит из инструкций, которые говорят компьютеру, что делать, и данных, которые программа использует во время работы. Данные состоят из постоянных (фиксированных) значений, которые никогда не меняются, и переменных значений (которые обычно инициализируются как 0 или некоторое значение по умолчанию, так как их фактические значения предоставляются пользователем). Обычно и постоянные, и переменные указаны как определенные типы данных. Каждый тип данных предписывает и ограничивает их форму. Примерами типов данных являются выраженное в виде десятичного числа целое число или строка текстовых символов, обычно ограниченной длины.
– с WhatIs.com
Например, в случае системы подсчета очков начальное значение количества очков можно установить равным 0. Каждый раз, когда игрок будет поднимать монету, количество очков будет увеличиваться на 10. Если игрок наберет 100 очков или больше, он выигрывает, и игра заканчивается. Если нет, то игра продолжается до тех пор, пока игрок не наберет хотя бы 100 очков.
Псевдокод — симуляция процесса написания кода для демонстрации идеи, которая будет реализована с помощью кода. Псевдокод показывает общую структуру, но не всегда использует правильный синтаксис. В этом занятии мы время от времени будем использовать псевдокод для демонстрации наших идей. На псевдокоде задание выглядит так:
Установить / задать переменную пер счет=0 Выдать 10 очков за золотую монету Начать цикл Проверить наличие монеты у игрока Does player have a gold coin? Если ДА, счет = счет +10 Повторить цикл Повторять цикл, пока игрок не наберет 100 очков Начать цикл Проверить наличие монеты у игрока Does player have a gold coin? Если да, добавить 10 очков игроку и убрать монету Набрал ли игрок 100 очков Если ДА, объявить победу игрока Завершить игру Повторить цикл, если счет меньше 100 очков Оставшаяся программа будет выполняться, пока игрок не наберет не менее 100 очков
Вот несколько видеороликов, объясняющих переменные в контексте написания кода:
Переменные можно использовать в любом языке программирования, а также в различных средах, в том числе в творческом режиме Fortnite, где можно создать сценарий, в котором переменная будет меняться на протяжении всей игры.
АКТИВНОСТИ
Учащиеся создадут гонку за сокровищами в творческом режиме Fortnite. Игроки будут обыскивать остров в поисках сокровищ (монет). Игра закончится, когда игрок соберет определенное количество монет или когда истечет время. Охота за сокровищами должна включать переменные и очки для отслеживания ценности/количества набранных игроком очков в зависимости от количества собранных им монет.
Поэтапные инструкции к занятию можно найти в руководстве учителя.
В процессе обучения ученики должны использовать только учебное пособие.
Дополнительные занятия
Если позволяет время, учащиеся должны попытаться решить следующие задачи:
Добавить новые предметы, которые будут приносить разное количество очков.
Повысить скорость бега игрока с помощью устройств «Команды» и «Инвентарь».
Настроить игру так, чтобы одиночный игрок мог достичь цели до истечения времени.
Использовать устройство «Управление счётом», чтобы сбросить количество очков игрока до 0, когда тот поднимает особый предмет.
Поэтапные инструкции к занятию можно найти в руководстве учителя.
Внешние ресурсы
Принципы CS: введение в переменные, часть 1
Принципы CS: введение в переменные, часть 2
Назначение стандартов
1A-AP-09 Продемонстрируйте принцип хранения и обработки данных программами с помощью цифр или других символов.
1B-AP-09 Создайте программы, которые используют переменные для хранения и изменения данных.
1B-AP-10 Создайте программы с последовательностями, событиями, петлями и условиями.
1B-AP-12 Измените, переделайте или внедрите элементы уже существующих программ в свою работу, чтобы создать что-то новое или добавить продвинутые функции.
1B-AP-15 Протестируйте и отладьте (найдите и исправьте ошибки) программу или алгоритм, чтобы убедиться, что он работает так, как задумано.
2-AP-1 Создайте четко названные переменные, представляющие различные типы данных, и выполните операции над их значениями.
2-AP-10 Используйте блок-схемы и/или псевдокод, чтобы преобразовать сложные проблемы в алгоритмы и решить их.
2-AP-13 Разбейте проблемы и подзадачи на части для упрощения разработки, внедрения и проверки программ.
2-AP-17 Систематически протестируйте и улучшите программы с помощью различный тестов.
3A-AP-13 Используйте уже имеющиеся знания и личные интересы для создания прототипов, которые используют алгоритмы для решения вычислительных проблем.
3A-AP-16 Придумайте и поэтапно разработайте вычислительные артефакты, использующие события и активируемые ими инструкции для решения практических вопросов или общественных проблем, а также выражения ваших личных взглядов.
3A-AP-17 С помощью системного анализа, а также таких конструкций, как процедуры, модули и/или объекты, разбейте проблемы на меньшие части.
3A-AP-22 Работая в команде и используя инструменты для совместной работы, придумайте и разработайте вычислительные артефакты.
МЕЖДИСЦИПЛИНАРНЫЕ СВЯЗИ И НАВЫКИ ДЛЯ XXI ВЕКА
Этот урок посвящён вопросам, связанным с программированием и информатикой.
Навыки для XXI века:
Критическое мышление
Творческая изобретательность
Совместный проект
Общение
Технологическая грамотность
Гибкость
Лидерство
Инициативность
Социальные навыки
ИЗМЕНЕНИЯ И АДАПТАЦИЯ
Меняйте и адаптируйте урок под потребности студентов, IEP, 504 и т. д.
Учащиеся могут работать в командах с целью внедрения метода программирования в парах.
Учащимся может быть предоставлен образец карты для разбора и изменения.
При необходимости предоставьте учащимся адаптивный контроллер/геймпад.