Муниципальное бюджетное общеобразовательное учреждение
«Голынковская средняя школа»
Проектная работа
“Язык программирования «Скрэтч» для начинающих”
по информатике
Выполнил ученик 9 класса «А» Чернышов Д.А.
Руководитель: Панфилова Ю.В.
пгт. Голынки, 2021
Паспорт проекта
Тема |
Язык программирования “Скретч” для начинающих. |
Тип проекта |
Исследовательский. |
Актуальность |
Программирование сложно для изучения многим взрослым, что уж говорить про детей. “Скретч” ломает данное представление и помогает детям и взрослым понять принципы работы языков программирования в игровой форме. |
Проблема |
Какую среду программирования выбрать детям или новичкам, которые ни разу не занимались программированием. |
Гипотеза |
Я предполагаю, что я смогу освоить язык программирования “Скретч”. |
Целевая аудитория |
Личности, заинтересованные в программировании, не знающие с чего начать. |
Цель |
Освоить язык программирования “Скретч” на базовом уровне. |
Задачи |
1.Рассмотреть понятия программирования и языка программирования. 2.Изучить историю создания языка программирования “Скретч”. 3.Изучить программирование на “Скретч”. |
Результат |
В результате своей работы я хочу продемонстрировать малую часть возможностей работы со “Скретч” и всё же дать окончательный ответ о сложности программирования на данном языке. |
Введение
Программирование крепко вошло в нашу жизнь, его продуктами мы пользуемся ежедневно. Такими продуктами является бытовая техника, софт. Те же самые станки требуют программного обеспечения, должны быть правильно настроены и обслужены с точки зрения ПО. Большинство людей считают, что программирование-это стук по клавишам и магия на мониторе, которую не всем под силу обуздать. Но так ли сложно программирование? Однозначного ответа я дать не могу, так как понять программирование и его основы относительно легче, чем на практике, так как даже опытные программисты допускают ошибки в коде, а на их нахождение иногда требуется большое количество времени. С чего же начать знакомство с программированием, кроме как с заучивания нудной теории? Начать можно с такого языка программирования, как “Скретч”. Данный язык предназначен для детей, но лично я считаю, что даже взрослые могут воспользоваться им для обучения программированию.
В настоящее время дети достаточно уверенно чувствуют себя в цифровом мире, быстро осваивают различные технологии, программные продукты, любят пользоваться гаджетами: телефонами, смартфонами, айфонами, планшетами, компьютерами и др. Но мало кто задумывается о том, кем и как были созданы или разработаны такие привычные для нас вещи, в том числе и компьютерные игры.
Компьютерные игры создавали специалисты, профессионально занимающиеся программированием, называемые программистами.
В связи с увеличением спроса на различные гаджеты, технические устройства, растет и спрос на программистов. «Только для созидания должны вы учиться!» - сказал Фридрих Ницше. Вот смысл учения – вырасти и изменить мир, сделать его лучше. Чтобы создать какую-нибудь программу, нужно учиться программировать.
Цель моей работы заключается в изучении языка программирования “Скретч”, параллельно демонстрируя, что данный язык хорошо подходит начинающим и детям.
Для достижения поставленной мною цели я определил данные задачи:
· Изучить понятия программирования и языка программирования
· Изучить историю создания языка программирования “Скретч”
· Изучить программирование на “Скретч”
Методы решений представленных задач: теоретический анализ исторических, публицистических, социологических источников.
Своим исследованием я хочу ответить на следующие вопросы: Что такое язык программирования? Что из себя представляет язык программирования “Скретч”? Трудно ли программировать на данном языке?
ГЛАВА 1. Теоретическая часть
1.1. Язык программирования «Скретч».
Программи́рование — процесс создания компьютерных программ.
По выражению одного из основателей языков программирования Никлауса Вирта «Программы = алгоритмы + структуры данных»[3].
Основывается программирование на использовании языков программирования, на которых записываются исходные тексты программ.
Язы́к программи́рования — формальный язык, предназначенный для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, определяющих внешний вид программы и действия, которые выполнит исполнитель (обычно — ЭВМ) под её управлением. Со времени создания первых программируемых машин человечество придумало более восьми тысяч языков программирования (включая эзотерические, визуальные и игрушечные). Каждый год их число увеличивается. Некоторыми языками умеет пользоваться только небольшое число их собственных разработчиков, другие становятся известны миллионам людей. Профессиональные программисты могут владеть несколькими языками программирования[3].
Скретч (англ. Scratch) — визуальная событийно-ориентированная среда программирования, созданная для детей и подростков. Название произошло от слова scratching — техники, используемой хип-хоп-диджеями, которые крутят виниловые пластинки вперед-назад руками для того, чтобы смешивать музыкальные темы. Кот «Скретчер» — официальный персонаж в языке программирования Скретч(смотреть приложение 1).
Скретч создан для развлечения и простоты обучения. Это инструмент для создания интерактивных историй, игр, рисунков, симуляций, анимаций и многого другого. Скретч имеет встроенный графический и звуковой редактор.
Он создан как продолжение идей языка Лого и конструктора Лего. Скретч 1.4 был написан на языке Squeak, 2.0 и 3.0 ориентированы на работу онлайн. Scratch 2.0 был переписан на Flash и ActionScript. Скретч 3.0 (текущая версия) является улучшенной версией Скретч 2.0 и сделана на HTML5, используя движок WebGL, что даёт ему возможность работать на мобильных устройствах и планшетах[3].
Программы на Скретче состоят из графических блоков, подписи к которым зависят от выбранного для интерфейса языка. Может быть выбран один из 50 языков интерфейса, включая русский. Для подключения интерфейса на новом языке используются стандартные gettext-файлы[3].
1.2. Достоинства “Скретч”
Для успеха сегодня, наверное, важно не столько, что ты знаешь, сколько – можешь ли изучить что-то новое, можешь ли ты найти креативное решение нестандартной задачи. Люди все чаще сталкиваются с нестандартными ситуациями, в которых необходимо мыслить креативно. Так что способность креативно думать и действовать важна как никогда раньше. С помощью Скретч у детей появляется возможность развить свой голос, найти вдохновение в работе других и сделать что-то похожее, но свое, выразить свои собственные идеи и поделиться ими с другими людьми по всему миру.
Кроме того, по мере изучения программирования на языке Скретч у ребят формируется не только логическое и алгоритмическое мышление, но и навыки работы с мультимедиа, создаются условия для активного, поискового учения, разнообразного программирования. Ребята научатся понимать и создавать компьютерные программы, использовать компьютер для решения различных задач. Таким образом от устаревшего понятия ”пользователя ПК“ (офисного планктона) будет осуществляться переход к ”создателю и соавтору информационного пространства“.
1.2. Программирование на “Скретч”
Основными компонентами скретч-программы являются объекты-спрайты. Спрайт состоит из графического представления — набора кадров-костюмов (англ. costume) и сценария-скрипта. Для редактирования костюмов спрайтов в скретч встроен графический редактор (англ. Paint Editor). Действие Скретч-программы происходит на сцене (англ. stage) размером 480×360 (условных) пикселей с центром координат в середине сцены (смотреть приложение 3)[3].
Для программирования сценариев в Скретче используется drag-and-drop-подход: блоки из палитры блоков перетаскиваются в область скриптов[3].
По функциональному назначению блоки делятся на 10 групп, принадлежность блока к той или иной группе обозначается его цветом(смотреть приложение 2).
У многих блоков имеется редактируемое белое поле для вводимых скретч-программистом параметров.
Блоки бывают трёх видов: блоки стека, блоки заголовков и блоки ссылок.
Блоки стека (большая часть блоков) (англ. Stack Blocks) сверху имеют выемку, а снизу — выступ, с их помощью они объединяются в группу блоков, называемую стеком. Стеки можно копировать и перемещать как единый блок. Особой разновидностью блоков стека являются управляющие конструкции, такие как циклы — они имеют С-образную форму, и могут охватывать собой вложенный стек скретч-блоков.
Блоки заголовков (их также называют шапками) (англ. Hats) имеют выпуклый верхний край и выступ для объединения снизу — они образуют заголовки скретч-стеков. К блокам-заголовкам относятся блоки «когда …» (англ. when …) из группы «Контроль», позволяющие организовать обработчики сообщений: внешних — от клавиатуры и мыши, и внутренних — передаваемых между спрайтами и позволяющих объектно-ориентированное программирование в smalltalk-стиле.
Блоки ссылок (англ. Reporters) предназначаются для заполнения внутренних полей других блоков.
Хотя архитектура Скретч-программ в виде набора спрайтов Скретча, обменивающиеся друг с другом событиями, напоминает объектно-ориентированную, Скретч не является объектно-ориентированным языком: в нём (ни в каком виде) нет механизмов наследования (в последних версиях расширенного диалекта скретча BYOB введено прототипное наследование)[3].
1.3. История создания
Проект по созданию Scratch инициирован в 2003 г. при финансовой поддержке компаний Science Foundation, Intel Foundation, Microsoft, MacArthur Foundation, LEGO Foundation, Code-toLearn Foundation, Google, Dell, Fastly, Inversoft и MIT Media Lab research consortia. Scratch создан в лаборатории Lifelong Kindergarten Массачусетского технологического института под руководством профессора Митчела Резника (Mitchel Resnick) в 2007 г.
Скретч 1.0, первая версия, была очень похожа на Скретч 1.4. В то время существовал только автономный редактор; веб-сайт представлял собой небольшой блог, где можно было загружать и смотреть проекты. По мере роста Скретча, веб-сайт становился все больше. Позже, Скретч 1.1, Скретч 1.2, Скретч 1.3 и Скретч 1.4 были выпущены. Тогда у Скретча появились миллионы пользователей и проектов, а также множество новых функций.
После выпуска Скретч 2.0 в 2013 году веб-сайт и интерфейс в проектах были изменены(смотреть приложение 9). Скретч продолжал расти, достигнув 30 миллионов пользователей и проектов.
Скретч 3.0 был выпущен в 2019 году.
Из-за большого роста сообщества Скретча, Фонд Скретча расширяется, и с 12 марта 2019 года он руководит проектированием, разработкой и поддержкой. MIT будет продолжать тесно сотрудничать с ним.
Познакомиться с командой разработчиков Scratch вы можете на странице https://scratch.mit.edu/credits.
1.4. Интересные сведения о “Скретч”
· В 2016 году Парк высоких технологий и Министерство образования Республики Беларусь запустили образовательный проект по обучению Scratch в школах [4].
· В Беларуси учебные программы по Scratch официально утверждены 24 июня 2016 года [4].
· Интерфейс Scratch переведен на 71 язык мира [4].
· Каждый день на Scratch создается более 30 тысяч проектов [4].
· На портале scratch.mit.edu зарегистрировано более 12,5 млн пользователей[4].
ГЛАВА 2. Практическая часть
Для практической работы я решил создать небольшую игру с незамысловатым сюжетом и типичным управлением. Выбрал тематику космоса, так как она первая пришла мне в голову. Фон и все последующие спрайты были взяты из официальной библиотеки Скретч.
Для начала я составил данный код для перемещения персонажа Ripley, т.к. все “механики” завязаны на нём. Его возможности просты:стрелка влево отвечает за передвижение персонажа по оси координат Ox на 6 единиц влево, стрелка право отвечает за передвижение по оси Ох на 6 единиц вправо.
Далее был написан алгоритм для перемещения летучей мыши по оси Оу.
Персонажу Ripley была задана команда с условием столкновения с летучей мышью, при выполнении условия персонаж пропадает, тем самым это означает поражение.
Конечной целью Ripley стало прикосновение к ракете (спрайт Rocketship). При столкновении персонажа со спрайтом ракета взлетает ввысь, что означает победу в данной игре.
Заключение
Программирование плотно вошло в нашу повседневность. Данную сферу можно взять не только в качестве работы, но и в качестве хобби, развлечения, т.к. программировать не сложно, это доказано на примере языка программирования “Скретч”. Процесс создания проектов на языке программирования “Скретч” очень занимателен, если продвинуться в изучении данного языка ещё дальше, то можно начать делать более сложные, увлекательные проекты. Данный язык хорошо подходит для детей.
Таким образом, изучая язык программирования, различные команды, я сам, руководствуясь инструкциями, создал развивающую игру. Одним из самых легких для меня этапов реализации проекта был этап работы со скриптами движения, управления, озвучивания героев, а самым трудным был выбор сценария и правильный подсчет баллов.
Свою игру я прорекламировал и апробировал на своих одноклассниках, а также в своей школе. Созданный продукт был познавателен и интересен ребятам, получил много положительных отзывов. В планах на будущее думаю создать второй уровень и добавить новых героев. А пока, являясь участником просто «любителем», я получил на специальном сайте оценивания проектов Dr.Scratch следующие баллы и с нетерпением жду результатов.
А самое главное, я для себя отметил, что понимание принципов программирования развивает моё мышление, и в дальнейшем поможет мне в выбранной мною профессии программиста, и я уже сделал свой первый шаг в «Цифровое будущее».
Список литературы
1. Босова Л.Л., Босова А.Ю. Информатика: учебник для 9 класса.
2. Википедия [https://ru.wikipedia.org/wiki]
3. Денис Голиков, 42 проекта на Scratch 3 для юных программистов.
4. Йохан Алудден, Федерико Вальясинди, Федерика Гамбел, Анимация на Scratch. Программирование для детей.
5. Лаборатория линуксоида. Программирование в Scratch. Курс. [https://younglinux.info/scratch/]
6. Скретч Википедия [https://ru.scratch-wiki.info/wiki]
7. Ссылка на ресурс: https://yandex.ru/search/?text=Программирование%20для%20детей.%20Учимся%20создавать%20игры%20на%20Scratch%20Юлия%20Торгашева%20книга&lr=117700&clid=1955453&win=231&ento=0oCgxsdHIwMzQ5NDY1NjgSlwFsc3Quc2xtQ2k4S0JIUmxlSFFTSjNOZllXSnZkWFE2VTJOeVlYUmphQ0FtSmlCelgyOTBlWEJsT2xSbGVIUXZRbTl2YTBCdmJnb1hDZ1Z5Wld4bGRoSU9abTl5YlhWc1lUMWpiMjF0YjI0S0hnb01ibUZ0WldSZlpXNTBhWFI1RWc1M2QzY3pORGxsT0RreE5TNHVNQT09GAJCF9GB0LrRgNC10YLRhyDQutC90LjQs9C4jW0Vfw&noreask=1
8. https://yandex.ru/search/?text=Scratch%203.0%3A%20творческие%20проекты%20на%20вырост.%20Рабочая%20тетрадь%20для%207–8%20классов%20Ю.%20В.%20Пашковская%20книга&lr=117700&clid=1955453&win=231&ento=0oCgxsdHIwNDI5MTU0NDcSlwFsc3Quc2xtQ2k4S0JIUmxlSFFTSjNOZllXSnZkWFE2VTJOeVlYUmphQ0FtSmlCelgyOTBlWEJsT2xSbGVIUXZRbTl2YTBCdmJnb1hDZ1Z5Wld4bGRoSU9abTl5YlhWc1lUMWpiMjF0YjI0S0hnb01ibUZ0WldSZlpXNTBhWFI1RWc1M2QzY3pORGxsT0RreE5TNHVNQT09GAJCF9GB0LrRgNC10YLRhyDQutC90LjQs9C4_tQLIg&noreask=1
Приложение
1.Кот “Скретчер”
Группа |
Английское название |
Цвет |
Примечание |
Движение |
Motion |
синий |
управляют движением спрайта (не применяется в фоне) |
Внешний вид |
Looks |
фиолетовый |
управляют внешностью спрайта |
Звук |
Sounds |
розовый |
управляют звуком спрайта |
События |
Events |
жёлтый |
проверка наличия событий, отправка сигналов ко всем спрайтам |
Управление |
Control |
оранжевый |
управляющие конструкции, заголовки обработчиков событий |
Сенсоры |
Sensing |
голубой |
опрос устройств ввода, таймер и имя участника |
Операторы[5] |
Operators |
зелёный |
арифметико-логические операции |
Переменные |
Variables |
красный |
раздел для управления переменными и списками |
Другие блоки |
My Blocks |
светло-розовый |
преобразуют комбинацию блоков в один блок, что упрощает код, или же упрощает создания своего личного блока |
Добавить Расширения |
Extensions |
темно-зелёный |
расширяют возможности Скретч. Есть разные виды расширений, такие, как: музыка, перо, видео распознавание, текст в речь, переводчик, Makey Makey, micro: bit, LEGO MINDSTORMS EV3 и LEGO Education WeDo 2.0 |
2. Блоки “Скретч”
3.Сцена
4. Интерфейс “Скретч” версии 3.0 с готовым кодом
5.Интерфейс первой версии “Скретч”
6.Интерфейс “Скретч” версии 2.0
7.Логотип “Скретч”
Скачано с www.znanio.ru
© ООО «Знанио»
С вами с 2009 года.