Scratch язык программирования для чего
Scratch — язык программирования для детей
Применения визуального языка программирования Scratch и возможности его использования.
Тенденция на повышение компьютерной грамотности и освоение технологий с самого раннего возраста привела к тому, что все больше родителей хотят обучать детей основам программирования с раннего возраста. Создание сайтов или своих проектов в привычных средах разработки вряд ли заинтересует 7-летнего ребенка, и для решения этой проблемы в 2003 году в MIT появился первый прототип языка Scratch, специально предназначенного для обучения школьников младших и средних классов основам создания собственных игр, анимаций и совместной работы над проектами.
Что такое Scratch
Скретч создан как продолжение идей языка Лого и конструктора Лего. Скретч 1.4 был написан на языке Squeak, Скретч 2.0 и 3.0 ориентированы на работу онлайн. Скретч 2.0 был переписан на Flash и ActionScript. Скретч 3.0 (текущая версия) является улучшенной версией Скретч 2.0 и сделана на HTML5, используя движок WebGL, что даёт ему возможность работать на мобильных устройствах и планшетах. Скретч разрабатывается небольшой командой программистов для детей в Массачусетском технологическом институте. Текущая версия — Скретч 3.0, выпущена в январе 2019 года.
Scratch — это визуальная объектно-ориентированная среда программирования. В ней ученики управляют объектами-спрайтами. Для них задается графическое представление, которое может быть импортировано из любого источника изображения, и скрипт действий, который составляется из блоков по принципу drag-and-drop. Эти блоки бывают нескольких видов:
Самое распространенное применение Scratch — это обучение детей программированию в форме создания мультфильмов или игр. Помимо этих применений, Scratch можно использовать для образовательных целей и создавать в программе иллюстративные материалы для уроков не только по программированию, но и по истории, биологии, физике и другим предметам. С версии 2.0 была добавлена функция звукового редактора, что расширяет возможности работы с разными видами данных.
Примеры приложений
Вот несколько примеров проектов, созданных при помощи платформы:
Как начать разработку на Скретч
Пользоваться Scratch можно полностью бесплатно как в онлайн-версии, так и в офлайн-редакторе. В 2014 году также вышла версия Scratch для детей младшего возраста под названием ScratchJr. Это мобильное приложение для Android и iOS, в котором дети так же управляют спрайтами, только в более упрощенной форме. В блоках не используется текст, поэтому дети могут учиться программировать до того, как научатся читать, и им доступен ограниченный набор действий: простые движения спрайтов и работа со звуками и изображениями.
Навык 21 века: Зачем детям «Скрэтч»?
Знакомство современных детей со «Скрэтчем» должно состояться хотя бы потому, что они буквально с пелёнок становятся активными потребителями цифровых технологий. Каждый день они смотрят мультики на ютубе, заходят на сайты и играют в игры на смартфонах, которые написаны на разных языках программирования. И для детей не должно быть загадкой, каким образом эти вещи появляются на свет. Если человек учит язык с ранних лет, то его произношение будет более естественным, а сложные грамматические структуры будут проще поддаваться. В этом плане изучение базовых принципов программирования мало чем отличается от изучения языков — русского или английского. Чем раньше дети начнут учиться языку программирования, тем более бегло они будут владеть языком и алгоритмами.
Задачи, которые решает программирование в воспитании детей
В последнее время многие говорят о поколении «диджитал нейтивс» (англ. «Digital natives» — рождённые в цифровом мире). Существует мнение, что через десять лет дети будут намного лучше разбираться в диджитале, чем поколение нынешних миллениалов. Это неправда. Технология — это то, что было создано после твоего рождения. Это значит, что когда бы человек ни был рождён, он всегда будет новичком в технологиях своего времени. Разница только в том, что программирование с каждым днём становится всё более массово доступным. Сейчас у нас есть технологические платформы, позволяющие обучать детей программированию. Благодаря этим инструментам мы можем воспитать целое поколение людей, которое будет комфортно чувствовать себя в диджитал-мире.
Большинство учителей информатики скажут, что основная задача программирования — познакомить детей с алгоритмами, а также развить у них определённое технологическое мышление. Но стоит смотреть на «Скрэтч» несколько шире. Сейчас важнее создавать условия, в которых детям будет комфортно использовать технологии для создания медиаконтента — быть дизайнерами. Поэтому практически все главы в книгах по программированию для детей начинаются с дизайна независимо от того, что мы делаем в этой главе: учимся создавать видео или программировать роботов. Конечно, неотъемлемая часть этого процесса — программирование и работа со скриптами. Все эти умения и трансформируют детей из потребителей диджитал-медиа в его создателей.
Кто будет программировать «компьютеры будущего»?
Создатели «Скрэтча» предполагали, что дети будут создавать в нём игры, анимацию и всевозможные интерактивные проекты. Программирование должно было стать для них новым развлечением, полезной игрой. Но так вышло, что большинство проектов, созданных в «Скрэтче» — это туториалы, разного вида обучающие материалы. Сейчас «Скрэтч» становится одной из самых популярных платформ для обучения. Получается, что мы можем воспитать целое поколение учителей. Это вдохновляет меня намного сильнее, чем возможность вырастить поколение программистов. Машинное обучение и искусственный интеллект изменят программирование, и через десять лет оно будет выглядеть совсем иначе. Возможно, в будущем компьютеры научатся программировать себя сами. А какое умение будет самым полезным в ситуации, когда компьютеры будут справляться самостоятельно? Дизайн и методики обучения.
Почему «Скрэтч»?
«Скрэтч» — это не только язык программирования, это ещё и полноценный инструмент разработчика. Одна из причин, почему стоит увлечь детей «Скрэтчем», это его многогранность. Это инструмент с огромными возможностями: он позволяет и программировать, и рисовать, и писать музыку. В нём дети могут редактировать аудиофайлы и создавать пусть короткие, но настоящие видео. А в следующей версии у детей появится возможность создавать свои приложения для iOS и Android. «Скрэтч» — это инструмент, который может заменить десяток других программ по созданию диджитал-контента в скрипт-среде. А ещё это облачный сервис, позволяющий взаимодействовать огромному количеству пользователей (около десяти миллионов), которые обмениваются идеями в ежедневном режиме.
Раньше детям приходилось учить английский язык, чтобы начать программировать. Ведь все самые популярные языки программирования основаны на английском: HTML, CSS, PHP. А «Скрэтч» — визуальный язык, который использует блоки, — это делает его гораздо доступнее. И конечно, ребёнок может выбрать один из 40 языков интерфейса, включая русский.
Ремикс в «Скрэтче»
Одна из самых прикольных кнопок в «Скрэтче» — это ремикс. В «Скрэтче» юзеры могут сделать ремикс абсолютно любого проекта, доступного в «облаке». Если ребёнок из Южной Африки создаст анимационный проект и сделает его общедоступным, то школьник из Японии сможет не только его посмотреть, но и перевести на японский, сделать субтитры или совсем перенастроить анимацию.
Идея ремикса лежит в основе «Скрэтча». Он даже называется «Скрэтч» (англ. «Scratch» — скрип, царапанье) именно по этой причине. Создатели были вдохновлены хип-хоп культурой и её философией создания музыки через использование семплов классических, фанк, соул и джазовых мелодий. Мы и сейчас находимся в хип-хоп культуре, но не с точки зрения музыки, а метафорически. Благодаря «Скрэтчу» люди могут дорабатывать идеи друг друга как индивидуально, так и сообща. И не надо переживать за авторство: «Скрэтч» автоматически добавляет реквизиты автора в созданный контент. «Скрэтч» — это своего рода проводник open source идей, когда любой код можно взять в открытом источнике и модифицировать его.
В заключении
Сегодня учиться программировать становится проще и увлекательнее. Используются не только новые типы программного обеспечения и обновленные методы обучения, но и онлайн-ресурсы. Существует также множество внешкольных программ, которые обучают детей, начиная с первого класса и старше, основам компьютерного программирования и робототехники. Такой практический опыт помогает очень быстро донести эти концепции до детей. Со «Скретчем» все еще веселее. Например, мы в Almamat предлагаем индивидуальные уроки с практической оптикой. Это позволяет изменить «майндфрейм» вашего ребенка. Работая над новым продуктом, ребенок представляет в деталях, что и каким образом будет функционировать. Скрэтч учит детей мыслить структурировано, организовывать задачи и планировать, понимать взаимосвязь между предметом и действиями. Скрэтч развивает «стройную логику» которая играет важную роль во всех сферах жизни. Подарите своим детям радость от изучения кода, записавшись на пробное занятие от Almamat уже сегодня.
«Scratch — ненастоящий язык программирования»: чему учат в кружках
Что думают родители про Скретч
Язык Скретч — это то, что рекомендуют использовать для знакомства детей от 7 лет с программированием.
При этом родители занимают две противоположных позиции.
Первые говорят следующее:
Вторые следуют рекомендациям преподавателей и методистов и ищут кружок, где изучают Скретч, но выбирают обычно по классическим параметрам — цена и удаленность от дома/школы.
Что предлагают кружки
На самом деле, с дополнительным образованием всё не так просто, как со школьным. Для школьных предметов есть стандарты и ЕГЭ с четкими критериями оценки. Потому изучение одного и того же школьного предмета в разных школах и у репетиторов может отличаться только глубиной и серьезностью подготовки.
В отношении дополнительных направлений, которые предлагают кружки, ситуация обстоит совсем другим образом. Единых утвержденных учебных планов и программ по дополнительным направлениям, наподобие программирования или робототехники нет. Каждое учебное заведение, в особенности, частное, предлагает свою учебную программу. За ту же самую цену в разных кружках вы получите разный результат. И именно по этому ожидаемому результату стоит выбирать учреждение дополнительного образования и дисциплину. И наоборот, за более высокую цену вы можете получить больше пользы для ребенка и выражаться она будет не только в изучении программирования. Если кружок бесплатный, это вовсе не означает, что он самый лучший.
Чем полезны учебные языки программирования
Например, в Инженерике мы не ставим задачей научить ребенка работать в программе Скретч. Это не самоцель. Скретч — действительно учебный язык и учебная среда для создания программ и игр, в настоящей разработке она не используется, но это не значит, что от нее сразу нужно отказываться. Вы же не станете сразу готовить блюдо по технологически сложному рецепту, не освоив базовые принципы готовки. А взяв профессиональное оборудование для приготовления вы не сможете использовать его на максимум. То же и с языками программирования. Общие принципы составления алгоритмов можно изучать и без компьютера, этому посвящены хорошие книги и упражнения (например, книги Дональда Кнута). Во взрослом возрасте синтаксис языка программирования (слова, на которых пишется код), изучаются за трое суток упорного погружения. В возрасте подростка изучить синтаксис языка можно за несколько лет. Для чего переусложнять этот опыт в самом начале? Тем более, если юный человек еще даже не определился, точно ли он хочет стать программистом.
На случай проверки своих интересов и легкого познания алгоритмических концепций и придуманы учебные языки и среды. Они созданы так, чтобы знакомство с программированием проходило гладко и интересно. Если ребенок сможет освоить учебный язык и создавать на нем что-то полезное, если сохранит мотивацию к этому направлению деятельности, если упрётся в потолок учебного языка и захочет пойти дальше и выше — вот тогда стоит переходить на серьезные языки.
Примеры сложных проектов в среде Скретч
Посмотрите видео проектов, которые сделали ученики Инженерики (это индивидуальные и групповые проекты). Длительность создания такого проекта может достигать двух или трех месяцев. Это очень сложная работа при взаимодействии группы ребят, экспертов-консультантов и наставников. Не каждый взрослый смог бы довести подобный проект до конца, даже при том, что на отдельных упражнениях в алгоритмике показал бы себя наилучшим образом. Участие в подобных проектах не только позволяет применить знания к практике, но и развивает личностные качестве ребенка, те самые 4К-компетенции, о которых так много сейчас говорят — коммуникативность, умение работать в команде, креативность, критическое мышление.
Скретч как среда для развития мышления
В Инженерике мы изучаем принципы программирования и создания полезных ИТ-продуктов на примере языка Скретч. То есть используем Скретч как инструмент, как безопасную песочницу для увлекательных экспериментов, но этим не ограничиваемся. В первый год знакомства с миром программистов, мы ставим одной из задач развитие у ребенка мышления — алгоритмического, математического, вычислительного, системного.
Задача разработчиков не в том, чтобы писать код, как думают многие ребята, кто приходит на занятия. И не в том, чтобы создавать еще одну версию уже существующей игры (только собственную!). И не в том, чтобы делать копию программы, которая уже есть и всем известна. Любая программа появилась в компьютере не просто так. Ее создали разработчики, чтобы решать какую-то проблему человека, помогать ему в чём-то. Программу калькулятор и Excel создали, чтобы было легче считать, Word — чтобы делать красивые документы и сохранять шаблоны на будущее; Paint и Photoshop — чтобы создавать цифровые иллюстрации и легко изменять их; игры Майнкрафт и PUBG — чтобы отдохнуть, весело провести время с друзьями; движок Unity — чтобы самим создавать 3D-игры; а браузеры и социальные сети — чтобы получать нужную информацию и общаться с единомышленниками, не выходя из дома.
Так мы учим мыслить наших учеников, думать о проблеме, которая лежит в основе любого изобретения, создавать что-то полезное с помощью алгоритмов и программ, учим искать идеи, разбивать задачу на подзадачи, делить эти подзадачи на других участников команды.
Очное обучение в группе сейчас полезнее индивидуального
Очное обучение в группе обладает особенностями, которых нет у онлайн-занятий. Это как раз та самая возможность научиться коммуницировать с другими ребятами, находить себе команду, понимать в ней свою роль, пробовать разные роли, переживать конфликты, неудачи, общий и личный успех. Но работа в группе не наладится сама по себе, если наставник не приложит к этому усилий. Наши наставники не запрещают ребятам разговаривать на занятии, а напротив, поощряют обмен идеями и мнениями, обсуждение темы урока и способов решения задач. Ученики на занятии знают, что обратиться за помощью могут не только к наставнику, но и к тем ребятам, кто уже умеет это делать и может научить других.
Важны и формы работы с материалом на занятиях. Очень часто бывает (в особенности, этим грешат онлайн-уроки от неопытных преподавателей на YouTube), что в видео просто рассказывают, как что-то сделать и демонстрируют с предложением повторить. Не объясняют, почему нужно делать именно так, с чего нужно начинать, не отрабатывают умения. Такой подход работает только на вовлечение ребенка в деятельность, позволяет приятно провести время, но не формирует умение самостоятельно создавать подобные проекты.
Увидеть склонности ребенка можно только по его проектам
В Инженерике мы работаем с несколькими видами задач:
учебные упражнения — на них мы познаем принципы программирования, отрабатываем навыки, экспериментируем;
задания с четко обозначенным конечным результатом — через них мы учимся распознавать паттерны, следовать требованию, искать разные пути решения и находить оптимальные;
задания с четкими техническими требованиями и свободным конечным результатом — на них учимся соблюдать техническое задание, но при этом вкладывать частичку своего видения, креативить, выражать свои интересы;
проекты по реальной проблематике — так мы учимся видеть проблему, исследовать ситуацию, которая к ней привела, предлагать решение теми способами, которые нам доступны, самостоятельно добирать недостающую информацию.
Через результаты, через те проекты, что создает ребенок, мы видим его склонности, ход мыслей, слабые и сильные места. В течение учебного года всего лишь при работе в одной программе Скретч становится видно, кто из ребят больше любит составлять алгоритмы, а кто в итоге склоняется к графике и какому ее виду — векторной или растровой. Нравится ли ребенку работать с анимацией или со статичным проектированием, делать игры или прикладные приложения, быть исполнителем или проектировать собственные решения.
Система дополнительного образования для 10-12 летних ребят и должна делать именно это — проявлять склонности, развивать качества характера и мышление, давать пробовать себя в деятельности, показывать возможности применения этих навыков в мире и будущей профессии. Совсем не обязательно, что после двух лет изучения программирования ребенок точно решит стать программистом. Но то алгоритмическое и вычислительное мышление, которое разовьется у ребенка под руководством наставника, используется во множестве самых разных областей и профессий.
Потому, когда мы слышим, что ребенок уже сам что-то изучал и делал в какой-то программе — означает лишь, что он каким-то образом знаком с технологиями. Но оценить его мы можем только по результату — по тем проектам, которые он делает под руководством наставника и — более важно — по тем, которые он после обучения способен делать сам или привлечь к созданию команду других ребят.
Резюмируем
При выборе учебной программы уточняйте, какие навыки будут развиваться в ходе обучения и как именно. Через что можно будет увидеть результат.
Цена курса определяется количеством усилий, вложенных в разработку методики обучения, учебных материалов.
В разных кружках могут быть разные подходы к выбору преподавателей. Не обязательно, что специалист-практик в программировании хорошо умеет работать с группой детей, закладывать самостоятельные навыки, проводить рефлексию, учитывать индивидуальные особенности каждого ребенка. Как не обязательно и то, что человек с педагогическим образованием грамотно донесет технические концепции до ребенка, расширит кругозор, покажет перспективы развития в мире реальной разработки. Лучше, если в создании учебной программы принимали участие несколько разных специалистов, в том числе методисты, эксперты-практики, педагоги.
Не стоит думать, что если ребенок самостоятельно «разбирается с программой» или смотрит обучающие видео на YouTube, он научится программировать.
Scratch – дверь в мир программирования
Scratch – это язык программирования, который используется для знакомства детей с данной сферой деятельности. Многие родители считают, что Scratch не нужен, так как это, якобы, ненастоящий язык и лучше ребенку начинать с Python или JavaScript. Увы, такой подход скорее вреден, чем полезен, ведь Scratch как раз и разработан, чтобы в понятной ребенку форме донести основы программирования и дать ему возможность воплотить свои идеи в жизнь.
Не менее важным будет вопрос о том, как постигать данный язык – самостоятельно или воспользоваться курсами. В нашей статье мы расскажем, чем полезен Scratch для детей, что в нем можно сделать, а также как лучше ребенку его осваивать.
Описание языка Scratch
Scratch — это универсальный язык программирования, позволяющий помимо прочего, например, рисовать картины и создавать музыку. Данная особенность является весомой причиной обучать ему детей. К тому же, это еще и полноценный инструмент для программистов.
Среда разработки дает возможность детям редактировать аудиофайлы и монтировать небольшие, но полноценные видеоролики. В новые версии языка создатели обещают добавить функционал для создания собственных мобильных приложений.
Описание языка Scratch
Таким образом, Scratch сможет заменить собой сразу несколько программ, ориентированных исключительно на диджитал-разработку. Облачная технология позволяет большому числу пользователей взаимодействовать друг с другом, непрерывно обмениваться знаниями.
Механика программирования на Scratch
Данная среда разработки изначально ориентирована на изучение детьми, поэтому она отличается интуитивной понятностью и дружелюбностью.
Интерфейс условно поделен на 3 функциональных блока:
Перед детьми, начавшими изучать язык, сперва стоит задача перемещать Скрэтча по экрану, обучать его различным навыкам. В процессе этого кот постепенно начинает разговаривать и выполнять некоторые команды. Дети в итоге могут создать целый анимационный фильм с участием Скрэтча и его друзей.
В дальнейшем ребенок уже самостоятельно программирует игры, придумывая для них истории и выбирая героев. Готовая программа будет служить предметом гордости перед одноклассниками и друзьями.
Преимущества занятий Scratch для детей
Эта среда разработки предназначена исключительно для учебных целей и настоящими программистами не используется. Тем не менее, она служит базой для изучения уже профессиональных языков, прививает детям навыки составления алгоритмов в игровой форме.
Сложность на самом первом этапе обучения не нужна — в конце концов, существуют учебники по программированию, позволяющие изучать язык и без наличия компьютера. Взрослый человек осилит синтаксис нового для него языка за 2-3 дня упорной умственной работы. Ребенку же для этого может потребоваться несколько месяцев. Причем, не факт, что он твердо решит стать программистом.
Ваш Путь в IT начинается здесь
Именно для того, чтобы ребенок почувствовал себя в роли программиста, проверил свои интересы, существуют учебные среды разработки, каковой является в том числе и Scratch. Программирование для детей в них подается в виде увлекательной игры. Научившись создавать простейшие программы и имея дальнейшую мотивацию обучаться в этом направлении, ребенок уже захочет переходить на взрослый уровень разработки.
Нюансы ScratchJr
Scratch Junior является ответвлением от основной среды разработки, ориентированным на детей от 5 лет. Сначала разработчики создали соответствующее приложение для iPhone, Android и Kindle, а затем и программу для персональных компьютеров. В первом случае роль главного героя играл кот, во втором же случае взамен появился инопланетянин Тик.
Принцип работы в Scratch Jr подобен сборке конструктора Lego. Ребенок перемещает блоки, соединяя их в требуемом порядке. Правильно размещенные элементы примагничиваются друг к другу.
Все элементы приложения сгруппированы в функциональные блоки: движения, управления, внешнего вида, окончания и запуска. Каждый блок имеет вид иконки, обозначающей конкретную функцию и понятной каждому ребенку.
Нюансы ScratchJr
При использовании среды разработки детям даже необязательно уметь читать и считать. Однако эти навыки помогут создавать, например, программу для отправки сообщений или для перемещения объекта на определенное число клеток.
Спрайты для программирования можно выбирать из весьма обширной встроенной библиотеки. Коллекция также содержит большой выбор ландшафтов.
Добавление собственных изображений здесь не доступно, однако имеется встроенный простейший графический редактор, позволяющий с нуля создать нового персонажа.
Формально Scratch Jr объектно-ориентированным языком программирования не является. Тем не менее, здесь дети сталкиваются именно с объектной моделью. То есть, программа состоит из неких объектов (спрайтов), взаимодействующих друг с другом. Для этого необходимо давать спрайтам соответствующие команды.
Варианты проектов на Scratch
Множество начинающих программистов пользуются данной средой в домашних условиях, в школьных учреждениях, в музеях и библиотеках. Так, Гарвард предлагает к изучению обширный банк онлайн-ресурсов, позволяющий создавать проекты как на детском, так и на профессиональном уровнях. В сети также имеется русскоязычное сообщество любителей Scratch.
Ниже перечислим студии, на которые рекомендуется обратить внимание всем желающим изучить этот язык.
Мы в GeekBrains каждый день обучаем людей новым профессиям и точно знаем, с какими трудностями они сталкиваются. Вместе с экспертами по построению карьеры поможем определиться с новой профессией, узнать, с чего начать, и преодолеть страх изменений.
Карьерная мастерская это:
Уже 50 000 человек прошли мастерскую и сделали шаг к новой профессии!
Запишитесь на бесплатный курс и станьте ближе к новой карьере:
Зарегистрироваться и получить подарки
Помимо этого среда включает в себя множество других возможностей и студий. Ссылки на них можно находить в открытом доступе.
Топ-5 книг для изучения Scratch
Обучение Scratch для детей
Для начала изучения этого языка существуют специальные базовые курсы. Они позволяют детям попробовать себя в роли программиста и, возможно, сделать первый шаг на пути к востребованной профессии.
План программы обычно полностью состоит из практических занятий с домашними заданиями после каждого урока и постоянным взаимодействием с преподавателями. По завершению обучения ученики должны оформить и защитить финальный проект.
Такие курсы подходят детям:
Курс по программированию на Scratch будет полезен по нескольким причинам.
Для примера возьмем курсы GeekSchool. Их отличительные особенности:
Процесс обучения языкам программирования в наше время становится все более простым и увлекательным. Помимо традиционных средств и инструментов, используются также ресурсы Интернета, исключением здесь не является и среда Scratch. Программирование на этом языке будет легким и увлекательным для вашего ребенка, а в будущем станет фундаментом для новой профессии, если вы последуете всем советам и рекомендациям из этой статьи.