Методика преподавания темы "Программирование в среде Scratch" учащимся начальной школы

Дипломная работа

По теме:

«Методика преподавания темы «Программирование в среде Scratch» учащимся начальной школы»

Введение

Сегодня наука и технология развиваются столь стремительно, что образование зачастую не успевает за ними. Например, для того, чтобы успешно выступать на Российских олимпиадах по информатике, надо серьёзно заниматься, начиная с начальной школы. Ведущие вузы и фирмы, работающие в области информационных технологий, – МГУ, МФТИ, МИФИ, Intel и др. – стараются привлечь школьников к научной деятельности, причём с всё более раннего возраста. Для этого проводятся конкурсы, викторины, олимпиады и другие мероприятия.

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

Другой причиной снижения интереса учеников, имеющей отношение собственно к информатике, является очень небольшое количество часов, предусмотренное федеральными образовательными стандартами на изучение данного предмета. Более того, стандарты второго поколения вообще не включают дисциплину «Информатика», заменяя её «Информационными технологиями». Основной акцент предполагается сделать на приобретении учениками информационной грамотности, подразумевающей общие навыки обработки информации различных видов. Теоретическая же подготовка по информатике вынесена во внеучебную деятельность и, таким образом, носит факультативный характер.

Поэтому наиболее остро стоит проблема изучения возможных подходов к организации проектной внеучебной образовательной деятельности по информатике в начальной школе. Опыт таких видных педагогов как М.П. Лапчик, И.Г. Семакин, Е.К. Хеннер свидетельствует, что такая деятельность позволяет, с одной стороны, организовать среду для самореализации и самоутверждения учеников, и, с другой стороны, сформировать у них тягу к творчеству и знаниям и дать подходящие средства её реализации. Решение выше указанной проблемы может базироваться на использовании в обучении информатике языка программирования Scratch.

Scratch – это объектно-ориентированная среда, в которой блоки программ собираются из разноцветных кирпичиков команд точно также, как машины или другие объекты собираются из разноцветных кирпичиков в конструкторах Лего. Кроме того, в нем можно найти современные идеи из сред визуального программирования типа Delphi и даже из презентационных систем.

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

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

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

  1. ознакомиться со средой Scratch, с ее возможностями и характеристиками;

  2. уточнить особенности программирования в среде Scratch;

  3. провести анализ учебников, учебных пособий и методической литературы;

  4. выявить специфику обучения младших школьников программированию в среде Scratch;

  5. разработать перечень вопросов, которые необходимо отразить при изучении темы «Программирование в среде Scratch»;

  6. разработать методические рекомендации по преподаванию и тематическое планирование по теме «Программирование в среде Scratch»;

  7. провести экспериментальную проверку разработанной методики.

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

В первой главе «Теоретические основы проблемы преподавания темы «Программирование в среде Scratch» учащимся начальной школы» рассмотрены теоретические основы проблемы преподавания темы «Программирование в среде Scratch», в том числе:

  1. описание среды программирования Scratch;

  2. особенности программирования в среде Scratch;

  3. анализ учебников и учебных пособий по информатике.

Во второй главе «Разработка методики преподавания темы «Программирование в среде Scratch» учащимся начальной школы» описывается специфика преподавания темы «Программирование в среде Scratch» учащимся начальной школы, в том числе:

    1. перечень вопросов, рассматриваемых при изучении темы;

    2. методические рекомендации по преподаванию темы;

    3. тематическое планирование по теме «.

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

Экспериментальная проверка разработанной методики прошла в ГОУ СОШ «Школа здоровья» №1136 и показала свою эффективность, что позволяет рекомендовать методику к использованию учителями информатики, работающих в начальной школе.

программирование преподавание проект школьник

1. Теоретические основы проблемы преподавания темы «Программирование в среде Scratch» учащимся начальной школы

1.1 Описание среды программирования Scratch

Интерфейс программы спроектирован и сделан в расчете на детей, поэтому он максимально хорошо понимается интуитивно. Рассмотрим, как устроена среда. После запуска программы экран имеет вид (см. рис. 1).

Рис. 1. Интерфейс программы

Главная область (см. рис. 2), это, конечно же, сцена (располагается в правой части экрана), на ней отображаются результаты работы проекта.

Рис. 2. Сцена

Чтобы на сцене что-нибудь происходило, необходимо создать спрайты (см. рис. 3), т.е. визуальные динамические объекты; для этого используются специальные кнопки (см. рис. 4).

Рис. 3. Спрайты

Рис. 4. Кнопки создания новых спрайтов

Все, что создано, отображается на листе спрайтов, где можно выбрать один из спрайтов для настройки. При этом информация о текущем спрайте отображается в средней части экрана – поле скриптов (см. рис. 5). Это поле предназначено для описывания поведения данного спрайта.

Рис. 5. Поле скриптов

Верхнее поле содержит закладки (см. рис. 6), с помощью которых можно от просмотра скриптов перейти к просмотру возможных видов (рисунков) спрайта и связанных с данным спрайтом звуков. Краткая информация о выбранном спрайте: имя, текущий образ, координаты, направление и т.д. находятся выше (см. рис. 7).

Рисунок 6. Закладки

Рис. 7. Краткая информация о спрайте

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

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

При создании скриптов используется палитра блоков, которая занимает левую часть экрана (см. рис. 8). В ее верхней части располагаются 8 разноцветных кнопок, которые выбирают нужную группу команд: движение (см. рис. 8), внешность (см. рис. 9), звук (см. рис. 10), перо (см. рис. 11), контроль (см. рис. 12), сенсоры (см. рис. 13), числа (см. рис. 14), переменные (см. рис. 15). Команды выбранной группы отображаются в нижней части выбранного окна.

Рис. 8. Палитра блоков

Рис. 9. Внешность

Рис. 10. Звук

Рис. 11. Перо

Рис. 12. Контроль

Рис. 13. Сенсоры

Рис. 14. Числа

Рис. 15. Переменные

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

Практически все управление системой сосредоточено в верхней части экрана. Главное меню, выполнено в виде горизонтальных кнопок.

Рис. 16. Главное меню

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

Из вышесказанного становится понятно, что Scratch разрабатывался как новая учебная среда для обучения школьников программированию. В то же время учащиеся в полной мере могут раскрыть свои творческие таланты, так как в нем можно легко создавать фильмы, игры, анимированные открытки и презентации; придумывать и реализовывать различные объекты, определять, как они выглядят в разных условиях, перемещать по экрану, устанавливать способы взаимодействия между объектами. Дети могут сочинять истории, рисовать и оживлять на экране придуманных ими персонажей, учиться работать с графикой и звуком. Важно и то, что ребенок имеет возможность поделиться результатом своего творчества с друзьями или другими пользователями.

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

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

Scratch – среда программирования, появившаяся относительно недавно, даёт возможность учащимся младшего и среднего школьного возраста создавать игры, фильмы, анимированные истории и многое другое. Программа Scratch в объектно-ориентированной среде «собирается» из разноцветных блоков команд так же, как собираются из разноцветных кирпичиков в конструкторах Лего различные объекты. Создание программ в Scratch происходит путём совмещения графических блоков в стеках. При этом блоки сделаны так, что их можно совмещать только в синтаксически верные конструкции, что исключает ошибки. Различные типы данных имеют разные формы блоков, подчеркивая совместимость / несовместимость объектов между собой. Имеется возможность внесения изменений в программу даже тогда, когда она запущена, что позволяет экспериментировать с новыми идеями по ходу решения задачи. В результате выполнения простых команд создаётся сложная модель, в которой взаимодействуют множество объектов, наделенных различными свойствами. После того как проект создан в Scratch, есть возможность его разместить на сайте http://scratch.mit.edu/.

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

Сама идеология Scratch позволяет использовать при обучении современные методики и технологии обучения, такие как проблемный подход и метод проектов. После изучения основных конструкций языка и возможностей среды ставится задача по созданию и разработке соответствующего проекта. Это могут быть различные истории, тематику которых учитель предлагает с учётом возрастных особенностей учащихся, например, «Моя семья», «Мои увлечения», «Талантливые люди» (традиционная тематика проектов для пропедевтического обучения); рекламные ролики; анимированные истории по стихам и сказкам, изучаемым в школе и просто любимым учениками и т.д.

Данная технология обучения стимулирует учащихся к освоению возможностей языка программирования, изучению предмета «Информатика и ИКТ», подчеркивая их практическую личностную значимость. Анализ работы в Scratch показывает, что программа достаточно проста и легко осваивается. Однако, несмотря на свою простоту, Scratch предоставляет пользователю разнообразные средства работы с мультимедийными ресурсами, что вызывает интерес у учащихся, способствует развитию положительной мотивации к предмету в целом.

Среда Scratch разработана и поддерживается группой MIT Media Lab из Массачусетского института технологии (http://scratch.mit.edu). Scratch является бесплатным продуктом, что немаловажно для российских школ. Его разработка ведётся на языке Squeak, одном из наследников Smalltalk. Алан Кей, стоящий у истоков Smalltalk, а значит и у самых корней объектно-ориентированных технологий вообще, очень заинтересованно относится к развитию мышления и креативности детей. Причём Кей считает, что такое развитие должно начинаться как можно раньше: «…the media that powerfully shape our ways of thinking must be made accessible as early in life as possible». Среда (и язык) программирования Scratch, по задумке его создателей, является как раз тем средством, которое способно формировать «способы мышления».

Одной из главных концепций языка Scratch, является развитие собственных задумок с первой идеи до конечного программного продукта. Для этого в Scratch имеются все необходимые средства:

  • стандартные для языков процедурного типа: следование, ветвление, циклы, переменные, типы данных (целые и вещественные числа, строки, логические, списки – динамические массивы), псевдослучайные числа;

  • объектно-ориентированные: объекты (их поля и методы), передача сообщений и обработка событий;

  • интерактивные: обработка взаимодействия объектов между собой, с пользователем, а также событий вне компьютера (при помощи подключаемого сенсорного блока);

  • параллельное выполнение: запуск методов объектов в параллельных потоках с возможностью координации и синхронизации;

  • создание простого интерфейса пользователя.

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

Одной из важнейших особенностей проекта Scratch является большое постоянно действующее сообщество пользователей. Собственные разработки можно выкладывать в интернет и затем просматривать их на любом компьютере, где установлена Java (или сам Scratch). В настоящее время актуальной является версия Scratch 1.3, поддерживающая кириллицу (и несколько десятков других языков).

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

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

  • Блочное программирование. Для создания программ в Scratch, вы просто совмещаете графические блоки вместе в стеках. Блоки сделаны так, чтобы их можно было собрать только в синтаксически верных конструкциях, что исключает ошибки. Различные типы данных имеют разные формы, подчеркивая несовместимость. Вы можете сделать изменения в стеках, даже когда программа запущена, что позволяет больше экспериментировать с новыми идеями снова и снова.

  • Манипуляции данными. Со Scratch вы можете создать программы, которые управляют и смешивают графику, анимацию, музыку и звуки. Scratch расширяет возможности управления визуальными данными, которые популярны в сегодняшней культуре – например, добавляя программируемость, похожих на Photoshop фильтров.

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

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

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

Scratch основан на лучшем от языка программирования Squeak. Он был вдохновлен предыдущей работой над Logo и Squeak Etoys, но задуман более простым и интуитивным.

Scratch – проект с открытым исходным кодом, но закрытой командой разработчиков. Исходный код доступен в свободном доступе, но приложение разрабатывается маленькой командой ученых из MIT Media Lab.

1.3 Анализ учебников по информатике

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

Изучение алгоритмизации в школьной информатике может иметь два целевых аспекта: первый – развивающий аспект, под которым понимается развитие алгоритмического (еще говорят – операционного) мышления учащихся; второй – программистский аспект. Составление программы для ЭВМ начинается с построения алгоритма; важнейшим качеством профессионального программиста является развитое алгоритмическое мышление. Если в первом школьном учебнике информатики в изучении алгоритмизации превалировал второй, программистский, аспект, то в дальнейшем стала больше подчеркиваться развивающая роль данной темы.

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

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

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

Понятие «алгоритм» является центральным в первом школьном учебнике информатики [11]. В учебнике приводится следующее определение: «Под алгоритмом понимают понятное и точное предписание (указание) исполнителю совершить последовательность действий, направленных на достижение указанной цели или на решение поставленной задачи» [11, с. 35]. Указание на выполнение каждого отдельного действия названо командой, а «совокупность команд, которые могут быть выполнены исполнителем, называется системой команд исполнителя». В качестве основного свойства алгоритма подчеркивается формальный характер работы исполнителя при его выполнении. Отсюда делается вывод о том, что исполнителем алгоритма может быть автомат (машина, робот). На этой идее основан принцип программного управления работой компьютера, поскольку программа – это и есть алгоритм, представленный на языке, «понятном» компьютеру – на языке программирования.

Сформулированные в учебнике [11] понятия явились дидактической основой для раскрытия темы алгоритмизации во всех последующих учебниках информатики.

Практически весь алгоритмический раздел учебника [11] ориентирован на исполнителя – человека. В задачах вычислительного характера (а их большинство в учебнике) в качестве метода работы исполнителя предлагается заполнение таблицы значений. В программировании такие таблицы принято называть трассировочными таблицами. В учебнике сказано: «При исполнении алгоритма компьютером значения величин хранятся в его памяти. При исполнении алгоритма человеком таблица значений выполняет роль дополнительной памяти для исполнителя» [15, с 36].

Ручная трассировка является весьма полезным методическим приемом при обучении алгоритмизации и программированию. Она позволяет человеку ощутить себя формальным исполнителем, проследить процесс выполнения алгоритма, обнаружить ошибки в алгоритме. От этого приема не следует отказываться, независимо от того, имеется ли в распоряжении учеников компьютер или нет.

Одним из основных методических достижений учебника [11] стало введение в школьную информатику учебного алгоритмического языка. Алгоритмический язык А.П. Ершова можно назвать русскоязычным псевдокодом, предназначенным для обучения методике структурного программирования. Хотя в самом учебнике слова «структурное программирование» нигде не употребляются, но, фактически, реализуется именно этот подход.

Идея и технология структурного программирования возникла и интенсивно развивалась в 60–70-х гг. XX столетия и связана с именами таких классиков программирования, как Э.В. Дейкстр, X. Д. Миле, Е. Кнут и др. Большой вклад в теорию и практику программирования внес в этот период и академик А.П. Ершов. В частности, им был разработан АЛЬФА-язык программирования (развитая версия структурного языка Алгол-60 с русскоязычной нотацией) и создан транслятор с этого языка (АЛЬФА-транслятор). Учебный алгоритмический язык содержит в себе многие черты АЛЬФА-языка. Для учебных целей на базе алгоритмического языка был создан язык программирования РАПИРА, описанный в учебнике [11]. Однако он не получил распространения. В 1987 г. в МГУ была осуществлена разработка учебной среды программирования на основе алгоритмического языка, получившая название «Е-практикум» (Е-87). Впоследствии она получила развитие и распространение через известный пакет учебного программного обеспечения КуМир (Комплект Учебных Миров).

Наряду с использованием алгоритмического языка для описания алгоритмов в учебнике [11] активно используются блок-схемы. Подчеркивается необходимость стандартного изображения блок-схем, чего также требует методика структурного подхода к программированию.

В своих методических статьях и выступлениях А.П. Ершов выдвигал следующую идею применительно к школьной информатике: различать исполнителей алгоритмов, работающих с величинами и работающих «в обстановке»; а соответствующие алгоритмы для этих исполнителей называть алгоритмами работы с величинами и алгоритмами работы «в обстановке». В алгоритмах второго типа отсутствуют такие элементы, как величины (переменные, константы), команда присваивания, однако используются все типы алгоритмических структур. Идея применения таких исполнителей для обучения в полной мере была реализована в более поздних учебных изданиях.

Исторически первым педагогическим программным средством, предназначенным для обучения детей алгоритмизации, был язык программирования ЛОГО, разработанный в конце 1960-х гг. американским педагогом-психологом С. Пейпертом [16]. В состав ЛОГО входит исполнитель Черепашка, назначение которого – изображение на экране чертежей, рисунков, состоящих из прямолинейных отрезков. Программы управления Черепашкой составляются из команд: вперед(а), назад(а), направо(в), налево(в), поднять хвост, опустить хвост. Имеется в виду, что Черепашка рисует хвостом, и если хвост опущен, то при перемещении проводится линия, а когда хвост поднят, то линия не рисуется. Кроме того, в языке имеются все основные структурные команды. В целом ЛОГО предназначен для обучения структурной методике программирования. От ЛОГО происходит понятие черепашьей графики, используемой также и в некоторых профессиональных системах компьютерной графики.

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

В учебнике А.Г. Кушниренко [20] были развиты идеи преподавания алгоритмизации, заложенные А.П. Ершовым и С. Пейпертом. Основным методическим приемом стало использование разнообразных учебных алгоритмических исполнителей. В учебнике введено два таких исполнителя – это Робот и Чертежник. Назначение Робота – перемещение по полю, разделенному на клетки с выставленными в разных местах стенами. По пути своего движения Робот может закрашивать клетки, измерять температуру и уровень радиации. Исполнитель Чертежник – это своеобразный графопостроитель, действующий в системе декартовых координат, связанных с экраном. Назначение Чертежника – изображение чертежей, графиков, рисунков, состоящих из прямолинейных отрезков. Чертежник близок по идее к Черепашке, однако работа Черепашки не связана с системой координат (хотя единица длины для нее существует).

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

нц пока снизу стена

если клетка не закрашена то закрасить все

вправо кц

Авторы учебника [20] интерпретируют своего исполнителя следующим образом: Робот – это автоматическое устройство, управляемое компьютером. Между компьютером и Роботом имеется прямая и обратная связь. По прямой связи от ЭВМ к Роботу передаются управляющие команды, по обратной связи – ответы Робота на запросы о текущей обстановке. Например, фраза «снизу стена» обозначает запрос компьютера к Роботу на проверку условия: находится ли под ним стена. В результате Робот по обратной связи отвечает «да» или «нет» в зависимости от обстановки. То же самое относится к фразе «клетка не закрашена».

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

На примере исполнителя Робота вводится понятие вспомогательного алгоритма и метода последовательного уточнения (нисходящего проектирования; программирования сверху вниз). Пример использования Робота в учебнике [20] доказывает, что ограничиваясь исполнителями и алгоритмами, работающими без величин, можно успешно обучать структурной методике программирования.

В язык Робота постепенно включается использование величин со всеми их атрибутами: именем, значением, типом. Все команды Чертежника, кроме «поднять перо», «опустить перо», используют параметры, которые являются величинами.

Языком описания алгоритмов для всех исполнителей является учебный алгоритмический язык (АЯ). За основу взята версия АЯ, описанная в учебнике А.П. Ершова [11]. Однако введены некоторые модификации в изобразительные средства языка. Введение в учебнике [20] всякой новой конструкции алгоритмического языка происходит по одинаковой методической схеме:

  • рассматривается новая задача, требующая введения новой конструкции;

  • описывается алгоритм решения этой задачи;

  • дается формальное описание данной конструкции в общем виде.

Наряду с алгоритмами для Робота и Чертежника в учебнике [20] рассматриваются алгоритмы вычислительного характера, ориентированные на универсального исполнителя обработки информации – компьютер. Это типовые задачи обработки числовой и символьной информации: вычисление числовых последовательностей, обработка массивов, литерных строк и пр. Рассматриваются также алгоритмы решения содержательных задач методами математического моделирования.

В целом можно сказать, что в учебнике [20] алгоритмическая линия школьной информатики проработана наиболее полно и последовательно как в содержательном, так и в методическом плане.

Алгоритмическая линия в учебнике А.Г. Гейна [6] реализована по двум направлениям. Первое направление заключается в использовании учебных исполнителей алгоритмов, работающих «в обстановке», подобно тому, как это делается в учебнике [20]. Второе направление заключается в обучении построению вычислительных алгоритмов для решения задач математического моделирования.

В учебнике [6] также применен исполнитель с названием «Чертежник», который относится к категории исполнителей, работающих по принципу «черепашьей графики». В отличие от Чертежника из учебника А.Г. Кушниренко, его команды перемещения (сделать шаг, прыгнуть) и вращения (повернуть налево) не имеют параметров. По одной команде исполнитель перемещается на строго определенное расстояние – один шаг, или поворачивается против часовой стрелки на 90°. Поэтому создаваемые рисунки могут состоять только из горизонтальных и вертикальных отрезков. В этом смысле изобразительные возможности данного исполнителя более скромные, чем у Чертежника А.Г. Кушниренко. Можно сказать, что Чертежник А.Г. Гейна в чистом виде является исполнителем, работающим «в обстановке».

Для моделирования методов решения задач обработки табличной информации в [6] введен исполнитель Робот-манипулятор. Прямоугольная таблица имитируется стеллажом, состоящим из ячеек, в которые могут быть помещены различные радиодетали (микросхемы, транзисторы и пр.). Робот умеет перемещаться в вертикальном и горизонтальном направлениях вдоль ячеек, помещать в них детали или извлекать детали из ячеек. Здесь можно говорить о появлении величин, рассматривая имя детали в ячейке как величину (производится сравнение ее имени с именем искомой детали). Характерная структура алгоритмов управления Роботом – вложенные циклы с ветвлениями.

Второе направление алгоритмической линии в учебнике [6] – алгоритмы решения вычислительных задач. Для построения таких алгоритмов используется учебный исполнитель Вычислитель. Это исполнитель, работающий только с числовыми величинами. Поскольку в качестве языка программирования для реализации вычислительных алгоритмов на ЭВМ используется Бейсик, то и язык Вычислителя «бейсикообразен». Несмотря на неструктурный характер используемой версии Бейсика, авторы стараются оставаться в рамках структурного подхода. В частности, это проявляется в том, что в языке Вычислителя отсутствует команда перехода.

Для моделирования понятия переменной применительно к Вычислителю используется образ ящика. Имя переменной – это буква, записанная на «ящике», а присваиваемое ей значение – это величина (число), помещаемое в «ящик». Составление программы на Бейсике по данному алгоритму интерпретируется как перевод с языка Вычислителя на язык Бейсик. При этом «ящики» для переменных заменяются на ячейки памяти ЭВМ, а при записи программы требуется строго соблюдать правила синтаксиса Бейсика. Для программирования цикла с предусловием в учебнике предлагается использовать стандартный способ его реализации с помощью операторов IF GOTO (для версий Бейсика, в которых нет оператора WHILE).

В учебнике В.А. Каймина и др. [13] не применяется методика учебных исполнителей. Изучение алгоритмизации ориентируется на исполнителя-ЭВМ. Для описания алгоритмов используется алгоритмический язык, близкий к варианту А.П. Ершова. Блок-схемы практически не используются. В учебнике [13] рассматриваются вычислительные задачи, а также задачи на построение графических изображений. Языком реализации алгоритмов на ЭВМ является Бейсик. Как и в учебнике [6], авторы уделяют внимание стандартным приемам программирования на неструктурном Бейсике циклов и ветвлений.

В учебнике третьего поколения А.Г. Гейна и др. [7] существенно изменился подход к обучению алгоритмизации и программированию по сравнению с учебником [6] того же авторского коллектива. Введен новый учебный исполнитель Паркетчик. Для того, чтобы подчеркнуть формальный характер работы исполнителей алгоритмов, авторы используют термин «Бездумные исполнители» – БИ. Таким образом, Паркетчик представляет из себя БИ, назначение которого – выкладывать на клетчатом поле узоры из разноцветных плиток (красных и зелёных). Поле имеет прямоугольную форму; каждая клетка идентифицируется двумя индексными номерами – г по горизонтали и по вертикали, например: (1,1), (3,5) и т.п.

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

Паркетчик предназначен для методичного обучения структурному способу построения алгоритмов. Форма языеа Паркетчика применяется также и для описания вычислительных алгоритмов, подобно тому, как используется алгоритмический язык в учебнике А.Г. Кушниренко [20]. По сути дела, между алгоритмическим языком и языком Паркетчика нет принципиальной разницы. И тот и другой представляет собой структурный русскоязычной псевдокод. Видимо, считая описание алгоритма на языке Паркетчика достаточно структурированным и наглядным, авторы отказались от использования в учебнике [7] блок-схем.

В учебнике [7] предлагаются для изучения два языка программирования: QBasic и Паскаль. Поскольку QBasic является структурированной версией Бейсика, то нет принципиальной разницы в выборе того или другого языка для начального обучения программированию.

В учебнике А.А. Кузнецова и Н.В. Апатовой [19] каких-то специальных учебных средств для описания алгоритмов не используется. Значительный по объему раздел «Введение в программирование» ориентирован на начальное изучения Паскаля на примерах задач вычислительного характера, а также задач построения графических изображений и обработки строк.

В учебнике И.Г. Семакина и др. [6] применен отличный от рассмотренных подход к теме алгоритмизации. Его можно назвать кибернетическим подходом. Алгоритм трактуется как информационный компонент системы управления. Такой подход дает возможность ввести в содержание базового курса новую содержательную линию – линию управления. Это многоплановая линия, которая позволяет затронуть следующие вопросы:

  • элементы теоретической кибернетики: кибернетическая модель управления с обратной связью;

  • элементы прикладной кибернетики: структура компьютерных систем автоматического управления (систем с программным управлением); назначение автоматизированных систем управления;

  • основы теории алгоритмов.

Для того чтобы соблюсти принцип инвариантности содержания по отношению к конкретным версиям программного обеспечения, в учебнике [6] описывается гипотетический учебный исполнитель, которому дано имя ГРИС – графический исполнитель. Это исполнитель, работающий «в обстановке» (т.е. без использования величин). Наиболее близкими к нему являются Кенгуренок (пакет учебного ПО фирмы КУДИЦ) и Чертежник (учебник А.Г. Гейна [7]). На примере ГРИС вводятся основные понятия алгоритмизации. Предлагаемая последовательность заданий способствует эффективному достижению основной цели раздела – освоения структурной методики построения алгоритмов.

Отметим, что в среде Scratch пока отсутствуют такие важные компоненты языка вообще и объектно-ориентированного языка в частности, как процедуры и функции, передача параметров и возвращение значений (кроме как через глобальные переменные), рекурсия, определение классов объектов, наследование и полиморфизм, обработка исключений, текстовый ввод и файловый ввод и вывод. Однако не вызывает сомнений, что в ближайшем будущем язык пополнится этими и, вероятно, некоторыми другими компонентами. Как мы видим, Scratch действительно имеет богатые возможности. При этом для начала его изучения не требуется ничего (на первых порах), кроме умения читать, поскольку программа составляется из готовых цветных блоков. Этому уровню соответствуют практически все первоклассники.

Одной из важнейших особенностей проекта Scratch является большое постоянно действующее сообщество пользователей. Собственные разработки можно выкладывать в интернет и затем просматривать их на любом компьютере, где установлена Java (или сам Scratch). В настоящее время актуальной является версия Scratch 1.3, поддерживающая кириллицу (и несколько десятков других языков).

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

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

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

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

2. Методика преподавания темы «Программирование в среде Scratch» учащимся начальной школы

2.1 Специфика обучения младших школьников программированию в среде Scratch

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

Можно, но при соблюдении следующих условий:

  • для решения алгоритмических задач выбрана понятная и интересная ученикам предметная область;

  • программная реализация учебной среды программирования имеет дружественный пользовательский интерфейс;

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

Такая программная среда, в основе которой лежит язык программирования Scratch, была разработана группой ученых из Массачусетского технологического института (MIT). Создавая этот язык, ученые поставили более широкую задачу, чем научить учеников младших классов программированию. Основная идея проекта (http://scratch.mit.edu) – стать частью образовательной программы детей и подростков, развить у них творческие способности, логическое мышление, свободу в использовании информационных технологий. Все это решается путем вовлечения учеников в создание мультфильмов, демонстрационных роликов, программ-тренажеров, компьютерных игр, интерактивных мультимедийных презентаций.

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

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

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

  1. Для того чтобы дети эффективно осваивали знания в новой области, необходимо наличие мотивации. А мотивация учебной деятельности возникает, если они чувствуют личную заинтересованность в приобретении знаний для достижения своей цели. Scratch позволяет создавать проекты, которые интересны различным возрастным группам от 8 до 16 лет и старше – интерактивные презентации, мультфильмы, компьютерные игры, программы-тренажеры с использованием графики и мультимедиа.

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

  3. Для облегчения процесса создания программы разработчики реализовали защиту системы от синтаксических ошибок. То есть при совмещении графических блоков можно получить только синтаксически правильные конструкции.

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

  5. Использование шаблонов картинок и звуков из существующих библиотек, создание собственных файлов, выполнение таких операций с файлами проектов, как Сохранить, Открыть, Создать, позволяет ученикам быстро освоить работу с файловой системой и стандартными приложениями.

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

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

Опыт работы аспирантов И.Г. Семакина с учащимися начальной школы показывает, что после 6–8 часов учебных занятий с преподавателем дети выходят на индивидуальную самостоятельную работу над проектами. При этом они с большим энтузиазмом относятся к публикации своих разработок в Сети, отслеживают интерес Scratch-сообщества к своим проектам. Кроме того, после двух недель работы ребята уверенно пользуются как самой средой Scratch, так и сопутствующими инструментами – графическим редактором, операционной системой Windows (уверенно оперируют с графическими и звуковыми файлами), программой Проводник и интернет – браузерами: Internet Explorer и Firefox Mozilla.

Количество объектов в одном проекте увеличивается от 1–2 до 5–10, соответственно увеличивается размер и сложность скриптов. Самое интересное – это то, что появляется мотивация к изучению новых возможностей Scratch, которые осваиваются самостоятельно, без участия педагога. Обмен проектами в Сети позволяет перейти ученикам на новую ступень обучения. Создается открытое образовательное пространство, где каждый участник проекта является носителем знания и новых идей его реализации. Наблюдая за развитием проекта Scratch и деятельностью школьников, можно отметить, что мы имеем дело с новой формой обучения. Педагоги, обратившись к миру мультимедиа и программирования, выпускают ученика в информационную среду творчества и познавательной деятельности, а дети кроме предметных знаний приобретают качества, необходимые каждому человеку для успешной жизни и профессиональной карьеры.

2.2 Методические рекомендации

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

После того, как учителем выявлено понимание учащимися, следует переходить непосредственно к описанию программы. На данном этапе мы вплотную работаем с конструктором Лего, показывая сходство. Нагляднее всего его отметить используя конструктор и выведенную на проектор среду Scratch. Необходимо обязательно отметить то, что собирая кубики, наша фигурка растет вверх, а собирая скрипт в среде Scratch – вниз.

Рис. 20. Лего и Scratch

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

Первым этапом работы в среде Scratch должен стать небольшой проект, например движение спрайта, рисунок 21.

Рис. 21. Скрипт движения спрайта

Учитель вместе с учениками пошагово собирает, «кубик за кубиком», скрипт. После того как скрипт собран, учитель должен пояснить, что произойдет на сцене. Собрав этот не сложный скрипт, мы решаем сразу несколько вопросов, таких как: «Как собирать скрипт?», «Как запустить скрипт, как собирать скрипт?». Далее следует заметить, что выполнение скрипта можно запускать несколькими способами: с клавиатуры, мышью, при получении скриптом сообщения о запуске.

Также следует уделить внимание учащихся на новые понятия: скрипт, программа. Самое подходящее описание понятия скрипт, это алгоритм. Понятие алгоритм учащиеся уже должны знать, в этом случае устно проговаривается определение. Если понятие алгоритм учащимся еще не знакомо, то лучше всего дать упрощенное определение которое образуется из определения приведенного ранее (см. с. 29): «Алгоритм – это последовательность действий, которые выполняются друг за другом и приводят к решению поставленной задачи». Из этого определения выходит определение программы: «Программа – это совокупность алгоритмов». Также учащимся следует пояснить, что совокупность это соединение, собрание [13].

После того, как учащиеся разобрались с тем, как запускать скрипт, можно переходить к рассмотрению остальных блоков, в такой последовательности: блок «Движение», блок «Внешность», блок «Звук», блок «Перо», блок «Контроль» – рассмотреть циклы и условия, блок «Сенсоры», блок «Числа» – рассмотреть понятие случайное число, и блок «Переменные».

Среда программирования Scratch дает возможность реализации циклических алгоритмов и условий. Циклы и условия находятся в блоке «Контроль».

Для того чтобы учащиеся наиболее успешно усвоили данные определения, их следует вводить одновременно. Понятие «Цикл» можно охарактеризовать как «многократное выполнение одного или нескольких действий». Понятие условие описывается как «выполнение того или иного действия в зависимости от ситуации». Понятие случайное число, должно быть известно учащимся с уроков математики, но все равно стоит напомнить, что «случайное число – это число, которое случайным образом задается из определенного диапазона». После того, как определение дано следует привести пример случайного числа. Таким примером может служить телевизионная игра «Лото», по правилам которой из мешочка достаются бочонки, на которых указываются числа от 1 до 99. Тем самым мы показываем наглядный пример случайных чисел, ведь нельзя вытащить из мешочка заранее известное число. Реализация всех трех конструкций хорошо показывается при демонстрации мультфильма «Полет пчелы», смыслом которого является бесконечное перемещение спрайта по сцене ограниченной черной рамкой. Тогда скрипт выглядит так:

Рис. 22. Полет пчелы

Листинг скрипта показывает то, что щелчок по зеленому флажку приводит в действие скрипт, выполнение которого приводит к бесконечному перемещению спрайта по сцене ограниченной черным квадратом. Спрайт при касании черного цвета будет менять свое направление на случайное число в диапазоне от 90 до 100, тем самым спрайт никогда не покинет пределы черного квадрата и тем более сцены.

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

Для того чтобы дети эффективно усваивали знания в новой области, необходимо наличие мотивации. А мотивация учебной деятельности возникает, если они чувствуют личную заинтересованность в приобретении знаний для достижения своей цели. Scratch позволяет создавать проекты, которые интересны различным возрастным группам от 8 до 16 лет и старше – интерактивные презентации, мультфильмы, компьютерные игры, программы-тренажеры с использованием графики и мультимедиа.

Для контроля успешности учащихся необходимо несколько самостоятельных разработок небольших проектов, например: мультфильм «Кот», мультфильм «Полет пчелы» и «Калькулятор» и одного большого проекта «Электронное пианино».

При разработке мультфильма «Кот», учащиеся показывают свои знания и умения работать с блоками «Движение» и «Внешность». На примере учащихся 4 класса «Б» ГОУ СОШ «Школа здоровья» №1136 можно отметить, что с данным заданием справились все.

Второй мультфильм «Полет пчелы» требует от учащихся навыков работы с блоками «Движение», «Внешность», «Сенсоры». Учителю необходимо следить за работой учащихся, потому что мультфильм «Полет пчелы» сильно отличается от мультфильма «Кот» по уровню сложности и набору команд в скрипте. Это нужно делать для того, чтобы работа учащихся была наиболее продуктивна. В некоторых случаях возможна такая реализация этого проекта: учитель заранее собирает правильный скрипт и разбивает его на части, а учащимся предлагается собрать из частей правильную комбинацию. Такой метод хорошо себя показал при работ с учащимися, у которых слабо развито умение работать за компьютером или не развито совсем.

Проект «Калькулятор» должен показать умение учащихся работать с блоком «Числа» и «Переменные». Также учитель может проверить умение учащихся работать со спрайтами – создание, редактирование. Данный проект должен стать завершающим этапом, перед разработкой проекта «Электронное пианино» в котором должны будут отражены навыки работы со всеми блоками вместе.

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

Остановимся подробнее на тех вопросах, которые необходимо отразить при изучении темы «Программирование в среде Scratch» учащимися начальной школы, а именно:

  1. знакомство учащихся со средой программирования Scratch;

  2. рассмотрение различных способов запуска скрипта или нескольких скриптов;

  3. создание и редактирование спрайтов и звуков;

  4. рассмотрение скриптов связанных с движением объектов;

  5. рассмотрение скриптов связанных с изменением внешности объектов;

  6. рассмотрение скриптов связанных с изменением сцены при помощи спрайта;

  7. рассмотрение различных сенсоров встроенных в среду;

  8. изучение понятия переменная, и использование ее при счете и других различных областях применения;

  9. создание творческого проекта для закрепления всех полученных знаний.

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

Знакомство учащихся с средой программирования Scratch описано выше.

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

После того, как учащиеся освоят способ запуска скрипта необходимо создать первый скрипт. Но до создания первого скрипта нужно рассказать учащимся о блоках «Движение» и «Внешность». Это нужно для того, чтобы самый первый скрипт сразу произвел на школьников впечатление.

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

Применение данных кубиков учащимися целесообразно при решении поставленных перед ними задач. Например, одной из типовых задач может служить задача о коте. Целью задачи является перемещение кота из указанной точки в любом направлении. При этом кот должен на каждом шаге менять свой костюм и в конце сказать любую фразу, например: «Привет! Как дела?». При этом собирание скрипта у учащихся не вызовет больших усилий. Также, не обозначая и не рассказывая о том, что такое циклическая структура, учащиеся с легкостью используют ее в своих программах. Это свидетельствует о том, что программа действительно предназначена для раннего возраста.

Рис. 23. Скрипт задачи о коте

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

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

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

Рис. 20. Графический редактор

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

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

Попробовать использовать звук можно также на примере, рассмотренном ранее. Для этого нам понадобятся несколько кубиков блока «Звук»: , и .

Рис. 21. Графический редактор

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

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

Рис. 22. Скрипт рисования квадрата

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

Теперь нужно изучить блок «Сенсоры». Целесообразнее начать изучение с задачи о пчеле. Условие задачи звучит так: «Имеется объект Пчела с двумя костюмами: «крылья вверх» и «крылья вниз». Необходимо создать случайный и непрерывный анимированный полёт Пчелы».

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

На начальном этапе учащиеся уже знают, что нужно делать. Они создают спрайт пчелы, задают ему, уже знакомые, команды блоков «Движение», «Внешность» и «Контроль». Но вскоре у них возникает вопрос, как же добиться случайного и непрерывного полета? Тут и следует начать рассказывать о блоке «Сенсоры», так как у учащихся возникает острая необходимость в его использовании. Для достижения нужной цели мы будем использовать следующие новые кубики: , , .

Рис. 27. Скрипт полета пчелы

В данном примере мы создаем бесконечное движение пчелы по экрану, потому что тогда, когда пчела касается края она меняет свое направление. В дальнейшем необходимо рассмотреть кубик и подробнее рассказать о касании одного спрайта другого. После того когда скрипт готов, учащимся нужно дать задание найти в блоке «Движение» кубик, похожий на фрагмент скрипта в котором пчела отталкивается от экрана. Учащиеся без труда находят кубик . Сразу после этого дается задание, в котором они заменяют целую конструкцию одним кубиком (см. рис. 28).

Рис. 28. Улучшенный скрипт полета пчелы

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

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

Особое внимание нужно уделить блоку «Переменные». Так как понятие переменная новое, нужно объяснить, что переменная служит для хранения и последующего обращения к данным [30, с. 174]. Объяснить новое понятие можно на любом примере, в частности человек.

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

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

2.3 Тематическое планирование

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

Пояснительная записка

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

Цели курса

  1. Способствовать развитию алгоритмических способностей учащихся; научить ребенка восприятию условия задачи на построение алгоритма.

  2. Выявить наиболее способных детей для дальнейшей работы с ними на более высоком уровне (языки программирования Pascal, Delphi и др.).

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

Задачи курса

  1. Освоение среды Scratch и блочного построения скриптов.

  2. Освоение понятия «алгоритм» и изучения видов и свойств алгоритма.

  3. Освоение сложных алгоритмических конструкций.

Способы контроля

  1. Решение задач по текущей теме.

  2. Разработка проекта.

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

Можно, но при соблюдении следующих условий:

  • для решения алгоритмических задач выбрана понятная и интересная ученикам предметная область;

  • программная реализация учебной среды программирования имеет дружественный пользовательский интерфейс;

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

Такая программная среда, в основе которой лежит язык программирования Scratch, была разработана группой ученых из Массачусетского технологического института (MIT).

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

Для того чтобы дети эффективно усваивали знания в новой области, необходимо наличие мотивации. А мотивация учебной деятельности возникает, если они чувствуют личную заинтересованность в приобретении знаний для достижения своей цели. Scratch позволяет создавать проекты, которые интересны различным возрастным группам от 8 до 16 лет и старше – интерактивные презентации, мультфильмы, компьютерные игры, программы-тренажеры с использованием графики и мультимедиа.

3. Экспериментальная работа по применению методики преподавания темы «Программирование в среде Scratch» в начальной школе

3.1 Общие вопросы экспериментальной работы

Целью проведенной экспериментальной работы была проверка методики преподавания темы «Программирование в среде Scratch» учащимся начальной школы.

Задачи экспериментальной работы:

  1. реализация разработанной методики преподавания темы «Программирование в среде Scratch» учащимся начальной школы;

  2. разработка проекта учащимися начальной школы;

  3. оценка эффективности предложенной методики.

Реализация поставленных задач происходила в ГОУ СОШ «Школа здоровья» №1136. Экспериментальная методика была разработана и проверена применительно к учащимся 4 класса «А». Целью курса являлось создание проекта, который бы охарактеризовал умения и навыки учащихся. Учащиеся выбрали проект «Электронное пианино». В этом проекте необходимо создать небольшое электронное пианино с возможностью воспроизведения звуков, показать анимацию и возможность поиграть на пианино. Все учащиеся принимали участие в создании данного проекта. Результаты показали то, что многие школьники освоили программу и свободно могут создать несложный проект. Несколько человек усвоили курс хорошо, но свой проект без помощи создать не смогут или создадут с ошибками.

Таблица 9. Результаты диагностики умения младших школьников программировать в среде Scratch

Уровень умения младших школьников программировать в среде Scratch

Количество испытуемых

Высокий

5 человек

Средний

5 человека

Низкий

2 человек

Стоит заметить, что предмет «Информатика» в испытуемом классе только 1 год. Многие учащиеся не имеют навыков работы с компьютером. Неуверенно работают с манипуляторами, путают клавиши. То есть обстановка работы за компьютером является для них стрессовой. Связи с этим много времени ушло на обучение таких учащихся работать с компьютером (умение включать компьютер, пользоваться мышью). Также в этом возрасте, 8–9 лет, у учащихся существует боязнь сделать «что-то не так». Также учитывая возрастные особенности, работа за компьютером не должна превышать 15 минут за урок.

Однако, по данным приведенным в таблице 1 видно, что 10 учащихся справились с поставленными целями, из низ 5 хорошо овладели программой. Это говорит о том, что учащиеся хорошо расположены к алгоритмическому стилю мышления и работа за компьютером не вызывает у них дискомфорта.

Из вышесказанного делается вывод, что работу над одним проектом нужно разделять между 3 группами учащихся. Поэтому моменты, которые посложнее, следует давать ребятам, которые лучше справляются. Учащимся, которые только начинают работу за компьютером, необходимо все время помогать и следить за ходом выполнения работы. Это позволяет всем учащимся принимать участие в разработке проекта, при этом проект будет выполнен максимально быстро и качественно. Также коллективная работа позволяет слабоуспевающим учащимся постепенно избавляться от страха перед компьютером.

Проект учащихся был показан на классном часу и размещен на сайте (http://scratch.mit.edu/). Демонстрация проекта вызвала у учащихся восхищение своим трудом, что стало очень сильной мотивацией к продолжению работы в среде программирования Scratch.

Также стоит отметить то, что небольшая группа ребят захотела внеурочно заниматься программированием в среде Scratch. Эти занятия были продуктивнее, потому что все ребята были заинтересованы в изучении материала. Результатом этих занятий стала разработка проекта «Арканоид» по мотивам одноименной игре.

3.2 Проект «Электронное пианино»

Цель проекта: учащиеся должны создать фрагмент пианино, которое способно воспроизводить звуки, играть готовые мелодии и показывать анимацию.

Реализация проекта: учащиеся были поделены на 3 группы. Первая группа – создание фрагмента пианино, написание скриптов воспроизведения звуков, запись мелодии. Вторая группа – разработка фона и спрайтов, создание воспроизведения звуков, содействие в записи мелодии. Третья группа – разработка скрипта движения спрайта.

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

При помощи объектов, собирается фрагмент пианино. Каждая картинка является отдельным объектом, называемым спрайтом. Каждый спрайт должен будет иметь 2 костюма – обычное состояние и нажатое состояние, а также воспроизводить нужный звук (ноты). В итоге мы должны получить фрагмент пианино.

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

Левая кнопка «Готовые мелодии» является выпадающим меню, т.е. при нажатии на кнопку появляется новая кнопка рядом. Правая кнопка «Стоп» останавливает скрипт, прекращается воспроизведение звуков и анимации, на экране появляется информация о проекте.

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

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

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

Выбираем крайнюю левую ноту в нашем фрагменте, ноту «соль». Ищем спрайт этой ноты в панели спрайтов и щелкаем по нему два раза левой кнопкой мыши – данное действие откроет панель скриптов именно для этого спрайта. Также можно щелкнуть два раза левой кнопкой мыши по самому спрайту.

Исходя из этого, видно, что в работе спрайта участвуют три скрипта. Первый скрипт воспроизводит звук при нажатии на спрайт. При этом спрайт меняет свой костюм на следующий, т.е. нажатую ноту, воспроизводит звук под номером 43 (нота соль) продолжительностью 0,25 секунды и затем возвращается в исходное положение. Второй скрипт применяется тогда, когда играется готовая мелодия. «Когда я получу 1» означает то, что выполнение данного скрипта будет только после получения сообщения «1». Номера сообщений выбираются следующим образом: крайняя левая нота имеет сообщение 1, следующая – сообщение 2 и так далее. В данном случае меняются только лишь костюмы с интервалом в 0,25 секунды. Третий скрипт отменяет выполнение двух предыдущих скриптов и возвращает спрайт в исходное положение.

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

Затем скопированный скрипт можно поместить в окно скриптов данного спрайта, а также присоединить к любому другому спрайту или сцене. В нашем случае нужно прикрепить к следующему спрайту ноты. Для этого щелкаем по спрайту следующей ноты. Если все сделано правильно, то возле спрайта в который был перемещен скрипт будет выполнен графический эффект (квадратик уменьшающийся в центр). Далее двойным щелчком левой кнопкой мыши выбираем спрайт в который мы перемещали скрипт и меняем воспроизводимую ноту. Для того, чтобы совершать меньше ошибок, скрипты белых нот рекомендуется копировать только в идентичные скрипты. Аналогично с черными нотами. Так будет совершенно намного меньше ошибок.

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

В появившемся меню ищем кнопку и нажимаем на нее. Появится диалоговое окно.

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

При копировании третьего скрипта ничего менять не надо, если скрипты белых нот мы копируем только белым нотам, скрипты черных – только черным.

Заранее нужно разобраться с количеством и назначением сообщений в будущем проекте.

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

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

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

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

Для придания проекту интерактивности, было решено добавить два объекта: полоса загрузки и танцующее и поющее существо.

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

Листинг скрипта говорит о том, что спрайт при появлении начинает менять поочередно костюму, и когда одевает последний – исчезает. Получается красивый эффект ленты загрузки, реализованный самым простым способом.

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

С точки зрения проверки знаний учащихся, реализация данного скрипта показывает умение работать учащихся с блоком «Движение», «Внешность», «Контроль» и «Переменные».

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

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

3.3 Проект «Игра «Арканоид»»

Цель проекта: учащиеся должны реализовать игру «Арканоид» в среде программирования Scratch

Реализация проекта: создание спрайтов фишек, шарика и ракетки. Редактирование фона и обозначение условий игры. Создание переменных и границ сцены.

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

Сперва отредактируем сцену. Сцена состоит из трех частей, – нейтральное поле, по которому двигается шарик, – верхняя граница игрового поля, от которой шарик отскакивает и – нижняя граница игрового поля, попадание в нее шарика останавливает игру.

После создания игрового поля нужно переходить к разработке игровой ракетки.

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

Скрипт состоит из двух частей: первая – устанавливает ракетку в начальное положение (0; – 150), вторая – запускает движение ракетки за курсором мыши.

Следующий объект, который нужно создать – это фишка. Фишек в проекте может быть любое количество, в нашем проекте 14 фишек. Создавать фишки нужно так: создать одну фишку, назначить ей скрипты, а затем скопировать необходимое количество раз.

Скрипт фишки также состоит из двух частей. Первая часть – установка фишки в нужную позицию на игровом поле, путем задания каждой фишки значения по X и по Y. Вторая часть – при касании шариком фишки, фишка должна исчезнуть.

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

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

Скорость шарика можно сделать статической, т.е. постоянной, или динамической, т.е. изменяемой при каких-либо условиях. В нашем проекте таким условием является попадание шарика на ракетку. Первоначальное количество очков равно 0. Очки начисляются после попадания шариком по фишке и отнимаются при ударе об ракетку. Количество фишек в начале игры равно 14, после попадания шариком по фишке, число фишек уменьшается, так как пропадает выбитая фишка, и тогда когда значение будет равняться 0 появляется сообщение о выигрыше.

Если шарик касается нижней полосы, то появляется сообщение о проигрыше.

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

Скрипт собран таким образом, что вначале описывается движение шарика, угол отскока от фишек, верхней границы и ракетки. Угол отскока от фишки и верхней границы равен 180 градусам. Если шарик касается боковых границ, то он отскакивает зеркально, т.е. на тот же угол, который был до касания. При попадании на ракетку написаны 3 варианта отскока, о которых было сказано выше. Также при касании шарика и ракетки воспроизводится звук.

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

Проект «Игра «Арканоид»» готова. В дальнейшем возможно создание нескольких уровней игры, различных степеней сложности.

Проведенная экспериментальная проверка разработанной методики преподавания темы «Программирование в среде Scratch» учащимся начальной школы на базе ГОУ СОШ «Школы здоровья» №1136 показала свою эффективность. Результатом проведенной работы стало создание учащимися начальной школы двух полноценных проектов.

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

Несмотря на то, что Scratch является языком программирования, с помощью которого изучаются такие понятия как алгоритм, скрипт, программа, творческая деятельность учащихся была на хорошем уровне. Ребята с интересом изучали новые возможности, при этом создавались интересные проекты. Примером таких проектов могут служить «Электронное пианино» и «Игра «Арканоид»».

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

Заключение

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

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

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

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

Можно, но при соблюдении следующих условий:

  • для решения алгоритмических задач выбрана понятная и интересная ученикам предметная область;

  • программная реализация учебной среды программирования имеет дружественный пользовательский интерфейс;

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

Такая программная среда, в основе которой лежит язык программирования Scratch, была разработана группой ученых из Массачусетского технологического института (MIT).

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

Для того чтобы дети эффективно усваивали знания в новой области, необходимо наличие мотивации. А мотивация учебной деятельности возникает, если они чувствуют личную заинтересованность в приобретении знаний для достижения своей цели. Scratch позволяет создавать проекты, которые интересны различным возрастным группам от 8 до 16 лет и старше – интерактивные презентации, мультфильмы, компьютерные игры, программы-тренажеры с использованием графики и мультимедиа.

Проведенная экспериментальная проверка разработанной методики преподавания темы «Программирование в среде Scratch» учащимся начальной школы на базе ГОУ СОШ «Школы здоровья» №1136 показала свою эффективность. Результатом проведенной работы стало создание учащимися начальной школы двух полноценных проектов.

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

Несмотря на то, что Scratch является языком программирования, с помощью которого изучаются такие понятия как алгоритм, скрипт, программа, творческая деятельность учащихся была на хорошем уровне. Ребята с интересом изучали новые возможности, при этом создавались интересные проекты. Примером таких проектов могут служить «Электронное пианино» и «Игра «Арканоид»».

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

Список литературы

  1. Белова Г.В. Программирование в среде ЛОГО. Первые шаги. – М.: Солон, 2007

  2. Бин Нгуен. Объектно-ориентированное программирование на IBM Smalltalk. – М.: Диалог-МГУ, 1996.

  3. Бокучава Т.П., Тур С.Н. Методическое пособие по информатике для учителей 2–4 классов. М.: BHV, 2007

  4. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений – М.: Вильямс, 2008.

  5. Великович Л., Цветкова М. Программирование для начинающих. – М.: Бином, 2007

  6. Гейн А.Г., Сенокосов А.И., Юнерман Н.А. Информатика: Учебник для 10–11 классов общеобразовательных учреждений. – М.: Просвещение, 2005

  7. Гейн А.Г. Информатика. 10 класс. Учебник. М.: Просвещение, 2008

  8. Горячев А.В., Волкова Т.О., Горина т.и. Информатика в играх и задачах: Учебник-тетрадь для 2 класса четырехлетней начальной школы: В 2 томах. М.: Баласс, 2006

  9. Еремин Е.А. Газета «Информатика». Среда Scratch – первое знакомство. – М.: Первое сентября, 2008 – №20 (573) – С. 17–24.

  10. Еремин Е.А. Газета «Информатика». Среда Scratch – первое знакомство. – М.: Первое сентября, 2008 – №20 (573) – С. 16–28.

  11. Ершов А.П. и др. Основы информатики и вычислительной техники. Учебник для 10–11-ых классов средних школ. – М.: Просвещение, 1985.

  12. Каймин В.А. Информатика. Учебник. М.: Инфра-М, 2004

  13. Каймин В.А. Информатика. Учебник. М.: Инфра-м, 2001

  14. Кнут Е. Дональд. Искусство программирования. Том 1. Основные алгоритмы. – М.: Вильямс, 2007

  15. Конопатова Н.К., Матвеева Н.В., Панкратова Л.П., Челак Е.Н., Нурова Н.А. Учебник для 4 класса. М.: Бином. Лаборатория знаний, 2007

  16. Конопатова Н.К., Матвеева Н.В., Челак Е.Н. Рабочая тетрадь для 4 класса, М.: Бином. Лаборатория знаний, 2006

  17. Кормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы. Построение и анализ. 2-е издание, 2007

  18. Красиков И.В., Красикова И.Е. Алгоритмы. Просто как дважды два. – М.:ИКФ «ЭКСМОС», 2006

  19. Кузнецов А.А., Апатова Н.В. Основы информатики. 8–9 классы. – М.: Дрофа, 2003

  20. Кушниренко А.Г., Лебедев Г.В., Зайдельман Я.Н. Информатика 7–9 классы. – М.: Дрофа, 2002

  21. Лаптев В. C++. Объектно-ориентированное программирование: Учебное пособие. – СП.: Учебное издание, 2008

  22. Левитин А. Алгоритмы. Введение в разработку и анализ. – М.: Вильямс, 2006

  23. Первин Ю.А. Методика раннего обучения информатике: Методическое пособие для учителей начальной школы и методистов Изд. 1-е/ 2-е. М.: Бином. Лаборатория знаний, 2008

  24. Полат Е.С. Новые педагогические и информационные технологии в системе образования. – М. Академия. – 2006.

  25. Семакин И.Г., Залогова Л.А., Русаков Н.С., Шестакова Л.В. Информатика. Базовый курс. 9 класс. – М.: Лаборатория базовых знаний, 2002

  26. Семакин И.Г., Хеннер Е.К. Информатика и ИКТ. Базовый уровень: учебник для 10–11 классов. – М.: БИНОМ, 2007.

  27. Семакин И.Г., Хеннер Е.К., Шеина Т.Ю. Практикум по информатике и ИКТ для 10–11 классов. Базовый уровень. – М.: БИНОМ, 2007.

  28. Сорокина В.В. Психологическое неблагополучие детей в начальной школе. – М.: Генезис, 2005

  29. Ожегов С.И. Толковый словарь русского языка. – М: Оникс, Мир и образование, 2008.

  30. Угринович Н.Д. Информатика и информационные технологии. Учебник для 10–11 классов. – М.: Лаборатория базовых знаний, 2006.

  31. Юдина А. Информатика. Методическое пособие к практикуму по информатике в среде Logo Writer. М.: Мнемозина, 2005

  32. Яшуев Р.Н. Работа со школьниками в области информатики. – М., 2007

  33. Яховский Н.Г. Обучение программированию в начальной школе. – М., 2008