ВВЕДЕНИЕ
Чем дальше мы движемся в будущее, тем более отчетливо видно, как программирование становится таким же важным навыком, как умение читать или писать. В XXI веке программирование — это навык, который помогает оптимизировать процессы. Человек, который умеет программировать, может не только создавать сайты, но и собирать информацию в единую, понятную систему и анализировать большие объемы данных.
Вопреки распространенным заблуждениям, основы программирования пригодятся не только людям, которые планируют стать разработчиками. Техническая грамотность позволит использовать любые цифровые продукты, которые в современном мире активно развиваются. Этим и обусловлена актуальность нашего проекта.
Чем раньше человек начнет изучать программирование, тем проще ему будет использовать этот навык в деятельности. Поэтому ребенка стоит знакомить с программированием с ранних лет: так ему будет проще продолжать обучение и справляться со сложными задачами.
Программирование способствует развитию вычислительного мышления. С таким навыком проще формулировать проблему и искать для нее эффективные решения.
Программирование постоянно бросает вызов и мотивирует искать ответы на сложные вопросы, развивает любознательность.
Навыки программирования помогают предвидеть проблемы и избегать их. Тестирование различных гипотез и регулярное столкновение с ошибками учат принятию и пониманию, что ошибка — лишь часть пути к необходимому результату.
Программирование стимулирует развитие креативности. Вопреки стереотипам, программисты зачастую обладают творческим мышлением, быстро генерируют новые идеи и не склонны ограничивать себя какими-либо рамками.
Умение программировать повысит шансы найти рабочее место или занять высокую должность.
Целью нашего исследования является разработка программного обеспечения интерактивной познавательной игры «Викторина» на языке программирования Scratch.
Для реализации цели необходимо выполнить ряд задач:
Придумать задания для Викторины, которые содержат задания по математике и логике
Разработать программное приложение на языке Scratch
Выполнить отладку проекта
Записать видео использования программы «Викторина»
ОСНОВНАЯ ЧАСТЬ
I.1. Язык программирования Scratch
Scratch — это среда визуального программирования с графическим интерфейсом, которая была создана медиалабораторией Массачусетского технологического института (the Media Laboratory at the Massachusetts Institute of Technology — MIT), чтобы сделать программирование простым, понятным и интересным именно для детей. Scratch — проект группы Lifelong Kindergarten MIT Media Lab. Продукт и среда разработки открыты, бесплатны и доступны на сайте scratch.mit.edu.
Можно выделить характерные особенности языка:
Основными компонентами Scratch являются объекты-спрайты. В среду разработки вводится игровой персонаж, в нашем проекте «кот Скрэтч».
Для редактирования костюмов кота в Scratch встроен графический редактор.
Действие Scratch происходит на сцене размером 480×360 (условных) пикселей с центром координат в середине сцены.
Перед детьми, начавшими изучать язык, сперва стоит задача перемещать Скрэтча по экрану, обучать его различным навыкам. В процессе этого кот постепенно начинает разговаривать и выполнять некоторые команды.
Для программирования сценариев в Scratch используется drag-and-drop-подход: блоки из палитры блоков перетаскиваются в область скриптов. По функциональному назначению блоки делятся на 10 групп, принадлежность блока к той или иной группе обозначается его цветом.
Таблица 1. Функциональные блоки Scratch
Группа |
Английское название |
Цвет |
Примечание |
Движение |
Motion |
синий |
управляют движением спрайта (не применяется в фоне) |
Внешний вид |
Looks |
фиолетовый |
управляют внешностью спрайта |
Звук |
Sounds |
розовый |
управляют звуком спрайта |
События |
Events |
жёлтый |
проверка наличия событий, отправка сигналов ко всем спрайтам |
Управление |
Control |
оранжевый |
управляющие конструкции, заголовки обработчиков событий |
Сенсоры |
Sensing |
голубой |
опрос устройств ввода, таймер и имя участника |
Операторы[4] |
Operators |
зелёный |
арифметико-логические операции |
Переменные |
Variables |
красный |
раздел для управления переменными и списками |
Другие блоки |
My Blocks |
светло-розовый |
преобразуют комбинацию блоков в один блок, что упрощает код, или же упрощает создания своего личного блока |
Блоки бывают трёх видов: блоки стека, блоки заголовков и блоки ссылок.
Блоки стека сверху имеют выемку, а снизу — выступ, с их помощью они объединяются в группу блоков, называемую стеком. Стеки можно копировать и перемещать как единый блок. Особой разновидностью блоков стека являются управляющие конструкции, такие как циклы — они имеют С-образную форму, и могут охватывать собой вложенный стек.
Блоки заголовков (шапки) имеют выпуклый верхний край и выступ для объединения снизу. К блокам-заголовкам относятся блоки «когда …» из группы «Контроль», позволяющие организовать обработчики сообщений: внешних — от клавиатуры и мыши, и внутренних — передаваемых между спрайтами.
Блоки ссылок предназначаются для заполнения внутренних полей других блоков.
Эта среда разработки предназначена исключительно для учебных целей и настоящими программистами не используется. Тем не менее, она служит базой для изучения уже профессиональных языков, прививает детям навыки составления алгоритмов в игровой форме
Сценарий интерактивной программы позволяет структурировать будущую программу до ее написания. Нами был разработан сценарий викторины, который состоит из 3 основных блоков: Приветствие, Вопросы, Завершение.
Приветствие
Кот Скрэтч: «Привет! Как тебя зовут?»
Пользователь печатает в поле ввода свое имя.
Кот Скрэтч: «Классное имя. Сколько тебе лет?»
Пользователь печатает свой возраст в поле ввода
Кот Скрэтч: «Викторина начнется, когда ты нажмешь «Пробел» и закончится по кнопке «Стрелка вверх»»
Вопросы
Вопрос 1.
Кот Скрэтч: «Сколько будет 15+15=?»
Если пользователь ответил 30, указав в поле ввода, то Скрэтч говорит: «Верно!» и задает следующий вопрос.
Если пользователь указывает значение отличное от 30, то кот говорит: «Ошибочка!»
Вопрос 2.
Кот Скрэтч: «Без окон и дверей – полна горница людей»
Если пользователь отвечает «огурец», печатая в поле ввода, то Скрэтч говорит: «Верно!» и задает следующий вопрос.
Если пользователь указывает другое слово, то кот говорит: «Ошибочка!»
Вопрос 3.
Кот Скрэтч: «Сколько будет 333+777»
Если пользователь отвечает «1110», печатая в поле ввода, то Скрэтч говорит: «Верно!» и задает следующий вопрос.
Если пользователь указывает другое значение, то кот говорит: «Ошибочка!»
Вопрос 4.
Кот Скрэтч: «Сколько будет 333+333»
Если пользователь отвечает «666», печатая в поле ввода, то Скрэтч говорит: «Верно!» и задает следующий вопрос.
Если пользователь указывает другое значение, то кот говорит: «Ошибочка!»
Вопрос 5.
Кот Скрэтч: «Сколько будет 900+320»
Если пользователь отвечает «1220», печатая в поле ввода, то Скрэтч говорит: «Верно!» и задает следующий вопрос.
Если пользователь указывает другое значение, то кот говорит: «Ошибочка!»
Завершение
Кот Скрэтч: «Верных ответов __. Неверных ответов ___. Спасибо за участие!»
II. 2. Создание программного обеспечения
2.1. Инструкция по первому запуску
Для создания программы используется облачная платформа «Алгоритмика» в браузере Google Chrome https://mars.algoritmika.org/
В разделе «Проекты» есть возможность создать новый проект.
Наш проект называется «Викторина».
Далее выбирается:
Спрайт, нами выбран «Кот»
Фон, нами выбран «Неоновый тунель»
Далее используя программные блоки производится набор программного кода по сценарию викторины.
Запуск программы производится по значку .
В программе используется несколько логических схем:
С его помощью в программах организуется ветвление, поэтому его также называют Оператором ветвления. Это значит, что при определенных условиях программа выполняется одним способом, а при отсутствии этих условий или наличии других условий программа выполняется другим способом, то есть идет по другому пути, другой ветке.
Использование переменных. Переменная состоит из имени и значения. Значение – это и есть данные. Через имя переменной мы обращаемся к ячейкам памяти, чтобы получить оттуда данные или изменить их. В проекте используются 2 переменные
Переменная «Верные ответы» для накопления верных ответов викторины
Переменная «Ошибки» для накопления ошибок в ответах на вопросы викторины.
Скрипт сценария «Приветствие» представлен на рисунке 1.
Рисунок 1. Скрипт части сценария программы «Приветствие»
Часть скрипта основного блока вопросов Викторины представлены на рисунке 2.
Рисунок 2. Скрипт основной части вопросов Викторины
Завершающий блок программы «Викторина» представлен на рисунке 3.
Рисунок 3. Скрипт завершающей части программы
Интерфейс программы представлен на рисунках 4 и 5.
Рисунок 4. Интерфейс программы «Викторина».
Рисунок 5. Интерфейс завершения интерактивной викторины.
Отладка программы проводится по сценарию с использованием 3 подходов:
Сначала вводятся все верные ответы. Кот постоянно говорит: «Верно!» и в конце Викторины указывает, что верных ответов - 5.
Следующий сценарий предполагает ввод всех неверных ответов. Тогда Скрэтч постоянно говорит: «Ошибочка!» и в конце игры указывает на 5 ошибок.
Последний сценарий предполагает ввод 3 верных и 2 неверных ошибок. Кот в конце программы отражает соответствующий результат.
В настоящее время широко в нашу жизнь внедряются информационные технологии. Сегодня, наверное, не осталось никакой области, где бы они ни применялись. Одной из сфер деятельности, в которой информационные технологии получили широкое распространение, является сфера образования.
В результате проектной работы были выполнены следующие этапы:
Придуманы задания для интерактивной Викторины, которые содержат задания по математике и логике
Разработано программное приложение на языке Scratch
Выполнена отладка программы.
Записано видео использования программы «Викторина» для презентации проекта
Таким образом, мы приходим к следующему выводу - использование разработанной программы может с одной стороны развивать навыки программирования, а с другой стороны повысить мотивацию в образовательном процессе за счет использования интерактивных систем обучения. Сократит время проверки знаний и трудоемкость работ по проверке результатов.
Список использованной литературы
Голиков Д.В. ScratchJr для самых юных программистов. Спб: «BHV», 2020 г. 96 с.
Шапошникова С. Программирование в Scratch, февраль 2021г. https://younglinux.info/scratch/introduction
Шашков С. Как и зачем детям с раннего возраста изучать программирование. 2021г. https://www.wday.ru/deti/vospitanie-detei/voiti-v-it-kak-i-zachem-s-rannego-vozrasta-izuchat-programmirovanie/
Скретч (язык программирования). https://ru.wikipedia.org/wiki/%D0%A1%D0%BA%D1%80%D0%B5%D1%82%D1%87_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)