Scratch – программирование для детей

VII Международный конкурс научно-исследовательских и творческих работ учащихся
Старт в науке

Scratch – программирование для детей

Ададуров Я.Д. 1
1МОУ "СОШ №63" г. Манитогорска
Васильева В.Н. 1
1МОУ "СОШ №63" г. Магнитогорска
Автор работы награжден дипломом победителя III степени
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

Введение

Мир не стоит на месте. Он стремительно меняется. Профессии, которые мы знали раньше, уходят в прошлое, на их смену приходят новые. Мы живем в век цифровых технологий. И время требует от нас новых навыков.

Сегодня навыки программирования нужны не только разработчикам сайтов, но и дизайнерам, артистам, ученым, аналитикам «больших данных» и людям иных профессий.

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

Знакомство современных детей с основами программирования должно состояться хотя бы потому, что они буквально с пелёнок становятся активными потребителями цифровых технологий. Каждый день они смотрят мультики на Ютубе, заходят на сайты и играют в игры на смартфонах, которые написаны на разных языках программирования. И для детей не должно быть загадкой, каким образом эти вещи появляются на свет. В связи с этим, не учить ребенка программированию - это все равно как научить ребенка чтению, но при этом не научить его письму.

Если человек учит язык с ранних лет, то его произношение будет более естественным, а сложные грамматические структуры будут проще поддаваться. В этом плане изучение базовых принципов программирования мало чем отличается от изучения языков — русского или английского. Чем раньше дети начнут учиться языку программирования, тем более бегло они будут владеть языком и алгоритмами.

Цель исследования:

Познакомить детей с программированием на примере языка программирования Scratch. Возбудить у ребят интерес к программированию. Показать практическую пользу программирования для детей.

Задачи исследования:

1. Рассказать о программировании. Сформировать основные понятия программирования на примере языка программирования Scratch.

2. Определить значение программирования в жизни детей.

3. Написать мультфильм на языке программирования Scratch.

Ожидаемый результат:

Я хочу, чтобы после знакомства с моей работой у ребят появился интерес к программированию. Хочу чтобы дети не только понимали как играть в игры, но и как они устроены изнутри.

1. Теоритическая часть.

1.1. Программирование. Основные понятия программирования

Программи́рование — это процесс создания компьютерных программ.

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

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

Программирование очень сложный и кропотливый процесс. Компьютерная программа (она же приложение) — связка многочисленных строк специального текста. Он является специальным, потому что создан таким образом, чтобы машине было понятно, какие действия должны быть выполнены. Самые простые приложения содержат около ста строк кода, а в сложных и масштабных приложениях количество строк кода доходит до миллиарда.

Компьютерный код — это специальный текст, состоящий из набора пошаговых инструкций. Он не всегда содержит в себе нули и единицы, также в нём есть определённые слова и дополнительные символы. Компьютер считывает код, который сообщает ему, какие операции следует выполнить с данными. Действия выполняются в том порядке, который прописан в коде, компьютер следует прописанным инструкциям подобно тому, как повар следует рецепту.

Если инструкции хорошо продуманы, то всё будет относительно хорошо работать. Относительно потому, что разработчикам часто приходится искать и исправлять баги (ошибки) в проектах, даже несмотря на то, что они рабочие. Ведь баг может превратиться в крупную уязвимость.

Если в инструкциях будет какой-либо недочёт, например, опечатка или неправильное толкование данных, то приложение будет работать нестабильно или не будет запускаться вообще, показывая сообщение об ошибке.

Программисту не так сложно писать код, как уметь терпеть и принимать все неудачи и провалы, с которыми ему приходится сталкиваться. Особенно терпеливы программисты из Индии: их код не всегда хорош, но их оптимизму могут позавидовать многие новички, которые разочаровались в себе.

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

1.2. Языки программирования. Scratch – язык программирования для детей.

В мире существует более тысячи разных языков программирования. Многие из них чуть меньше, чем полностью бесполезны. У программиста может быть замечательная карьера, если вы владеете 3-4 языками программирования.

Когда-то наиболее популярными языками программирования в школах мира были Бейсик и Паскаль. Бейсик всегда считался самым простым языком программирования, а Паскаль — самым подходящим языком для обучения программированию. Но теперь это не так. Да, Бейсик прост. Но он создавался во времена, когда человечество не имело никакого опыта создания компьютерных систем, и основан на устаревших и не оправдавших себя принципах.

При изучении данных языков программирования у детей формировалось стойкое убеждение, что программирование — это очень сложно и неинтересно, особенно для тех, кто увлекается творчеством. Несколько занятий дети перепечатывали странный код и не понимали, зачем, а в результате получали непонятную программу, которая выдаёт какие-то переменные или складывает числа на уровне 2+1. Невольно возникал вопрос, зачем было потрачено столько времени и усилий? Это же не классно и никому не нужно. Это никому нельзя показать, поскольку совершенно не вызывает интерес. Детям было ужасно скучно на таких уроках.

Язык программирования Scratch был создан специально для обучения программированию детей. Но это вовсе не значит, что он пригодится только на уроках информатики!

Создателем языка программирования Scratch является Митчел Резник руководитель исследовательской группы в MIT Media Lab. Scratch задумывался как простой и наглядный язык программирования для знакомства детей с основами программирования.

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

Несмотря на кажущуюся простоту, Scratch позволяет создавать достаточно сложные проекты с применением переменных, списков, циклов, условных операторов и многого другого из арсеналов «взрослых» языков программирования. Заниматься программированием на Scratch можно уже с 7 лет. Даже не владея понятиями о переменных и координатной плоскости, ребенок сможет сделать свои первые проекты.

Обычно Scratch не выходит за пределы кабинета информатики, однако, этот язык программирования имеет такие большие возможности, что позволяет использовать его и в рамках других школьных дисциплин. Язык Scratch является доступнейшим средством моделирования физических явлений. Может наглядно представить законы математики.

Кроме того, Scratch пригодится нам и на уроках физики, математики, географии и даже литературы. В Scratch дети пишут игры, которые позволяют отрабатывать устный счет, моделируют простейшие законы физики при запуске ракеты (полет тела по пораболе). Ещё один пример использования Scratch — создание тестов и викторин. Это может пригодиться на географии, истории, биологии.

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

2. Исследовательская часть:

2.1. Scratch – программирование. Основные этапы создания мультфильма.

С середины ноября 2018 года я занимаюсь в Международной школе программирования «Алгоримика». Я еще не так много изучил в среде Scratch, но этих навыков мне уже достаточно, чтобы написать небольшой мультфильм.

Основные этапы работы над мультфильмом я опишу в исследовательской части своей работы.

Первый этап.

Любая работа юного программиста, будь то мультфильм или игра, начинается с сюжета. Сначала я придумал сюжет своего мультфильма и подробно записал его.

При написании сюжета я решал следующие вопросы:

- Кто мои герои?

- При каких обстоятельствах они познакомились?

- О чем они могут говорить?

- Как их зовут, откуда они и чем занимаются?

Сначала мне не очень хотелось писать сюжет. Я долго не мог начать и постоянно откладывал его написание. Но потом я понял, что невозможно начать программировать, когда нет самой идеи. Мне хотелось быстрее приступить к программированию, поэтому я начал писать сюжет. Однако, я очень быстро включился в работу и мой сюжет даже получился с юмором.

Второй этап.

После того, как я написал сюжет своего мультфильма, я приступил к его написанию в среде Scratch. В «Алгоритмике» мы занимаемся на уникальной IT-платформе https://mars.algoritmika.org/site/login , на которую можно войти при помощи своего логина и пароля. На этой платформе в своем аккаунте я и приступил к написанию мультфильма.

Платформа для программирования состоит из двух частей: слева поле для написания алгоритма, справа сцена, где алгоритм оживает и превращается в мультфильм.

Каждую сцену я прописывал отдельно.

Сначала я выставил фоны. В программе имеются готовые фоны, которые можно использовать в работе. Кроме того, в программе есть графический редактор, при помощи которого можно полностью нарисовать фон самостоятельно или дополнить существующий. Для своего проекта я выбрал готовые фоны во вкладке “Выбрать фон”, которые я дорабатывал с помощью графического редактора.

Затем я выбрал героев, которые в Scratch носят название спрайты. Так же как и при работе с фонами, платформа содержит уже готовых спрайтов. У меня город котиков. В программе это один и тот же спрайт кот. Но все мои котики разные: кот-герой, кот-злодей и котик – обычный житель кошачьего города. Все котики со своими характерами, и мне нужно было передать это в работе, чтобы зрителю было понятны их образы. Соответственно коты отличаются своим внешним видом.

Изменить внешний вид спрайта можно при помощи вкладки «Костюмы». Костюмы отвечают за внешний вид спрайта. При помощи костюмов мы можем не только раскрасить героя, но и изменить его форму. Например, кот-герой летит по небу, кот-золей идет по земле, соответственно, отличается и их конфигурация. Кроме того, команда “сменить костюм” создает эффект движения спрайта.

Каждому спрайту я придумал и написал костюмы. Каждому спрайту прописал алгоритмы движений, в зависимости от роли, которую он играет в моем мультфильме.

При нажатии на флажок запускается первая сцена – ночной город. Сначала показывается кот-гражданин, который гуляет по городу. Чтобы установить его в нужное место на сцене я использовал команду «перейти в х … у…». Далее появляется кот-злодей в заданном месте с помощью команд «показаться» и «перейти в х… у…» и идет к коту-гражданину. Я создал эффект движения, используя смену костюмов в цикле и команду «идти». Кот-герой в начале программы не виден, потому что у него стоит команда «спрятаться». Он переходит в нужную нам координату с помощью команды «перейти в х… у…».

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

Смена сцен происходит при использовании команд во вкладке “События”. Команды в данном разделе позволяют нам задавать условия, при которых запускаются те или иные действия. Например, чтобы запустить мультфильм, необходимо нажать на зеленый флажок. Чтобы изменить место действия я использовал событие “когда стрелка вверх нажата”.

Не маловажным этапом работы является написание диалогов между героями. Диалоги в Scratch могут быть устными и письменными. Я решил использовать письменные диалоги, как в комиксах, потому что не на всех компьютерах имеется возможность воспроизведения звука.

Диалог – это разговор двух и более героев. В диалогах Scratch, как и в диалогах из обычной жизни, есть важное правило – пока один герой говорит, все остальные – молчат. Диалоги строятся при помощи команд “говорить” и “ждать”. Пока в отношении одного из героев действует команда “говорить”, в отношении остальных героев действуют команды “ждать”. Команда “ждать” содержит в себе время ожидания, определенное в секундах. При написании диалогов очень важно точно рассчитать время и указать его в поле команды. Это достаточно сложный процесс, который не всегда удается с первого раза. Если рассчитать время не правильно, герои могут начать говорить одновременно, перебивая друг друга, либо в диалогах будут возникать длинные скучные паузы. Диалоги моих героев я довел до совершенства.

Так родился мультфильм под названием «Кошачий детектив», который я хочу представить сегодня вашему вниманию. Его можно посмотреть по ссылке https://scratch.mit.edu/projects/285738919/.

2.2. Особенности программирования в Scratch

В языка программирования Scratch есть свои особенности. Так, в среде программирования имеются команды, которые по смыслу являются синонимами, но в программировании отвечают за разные действия.

Вот некоторые из них:

«Перейти в х… у…» и «плыть 1 секунд в точку х… у…», «плыть 1 секунд к…».

Команда перейти резко переносит нас в заданную точку, словно телепорт, а команда плыть делает это плавно, будто спрайт медленно передвигается, также мы можем задать его скорость, установив время передвижения. Еще одна команда “плыть 1 секунд к …” используется тогда, когда наш спрайт должен медленно переместиться к заданному объекту (это может быть спрайт, указатель мыши, случайное положение).

«Говорить … 2 секунд» и «сказать …».

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

«Думать … 2 секунд» и «думать …».

Также и с этими командами, мы можем задать время показа сообщения или просто оставить его на экране без времени.

«Изменить костюм на …» и «следующий костюм».

Команда “изменить костюм на…” меняет на конкретный костюм, который мы укажем в команде, а команда «следующий костюм» меняет его на следующий костюм у спрайта, который стоит в разделе «костюмы».

«Изменить фон на …» и «следующий фон».

Здесь также, команда “изменить фон на…” меняет фон на тот, который мы укажем. А «следующий фон» меняет на фон, который будет следующим по порядку в нашем разделе «фоны».

«Изменить размер на …» и «установить размер …».

Основная разница между командами “установить” и “изменить”. После команды “изменить размер на __%” мы получаем разный результат, он зависит от того, каков изначальный размер спрайта. А команда “Установить размер __ %” определяет размер заново, при этом неважно, что было раньше.

Цикл «повторить … раз» и «повторять всегда».

Первый цикл мы используем тогда, когда знаем, сколько раз нам нужно повторить данные команды. А второй цикл используем тогда, когда нам нужно повторять некоторые действия на протяжении всей программы.

Заключение

Целью моей работы было познакомить детей с программированием на примере языка программирования Scratch, возбудить у ребят интерес к программированию, показать практическую пользу программирования для детей.

Считаю, что со своей задачей я справился. Я показал вам мультфильм, который написал при помощи языка программирования Scratch, всего после двух с половиной месяцев обучения. Мой мультфильм получился забавным и интересным. Думаю, что многие ребята захотят создать подобный, а может быть и более сложный проект. Своей работой я хотел показать, что сложные “взрослые” понятия программирования можно изучать в детской среде мультфильмов и игр, того, что так любят дети.

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

Освоение навыков програмирования происходит в игровой форме в интересной для ребят среде.

Я знаю, что учиться программированию можно легко и весело.

Библиографический список

1.Прогаммирование для детей на языке SCRTCH. Аст, 2017.

2. SCRTCH для детей. Самоучитель по программированию.

Просмотров работы: 314