МАРСОХОД

Open Source Hardware Project

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

Сегодня я хочу рассказать о программе Scratch.
Scratch – это совершенно уникальная среда программирования для детей. Или правильнее сказать – среда для обучения программированию. Какому языку программирования она учит? Языку Scratch!
Язык программирования Scratch
И, конечно, наберитесь терпения, в конце концов вы узнаете, какая может быть связь между программой Scratch и платой Марсоход.


Давным-давно, когда я ходил в школу, мы на уроках информатики изучали язык Basic. Это в общем-то довольно простой язык программирования. С его помощью учителя нам объясняли что такое алгоритмы, переменные, циклы и ветвления программ. Теперь наверное языку Basic уже не учат. Учат работе с программами типа Paint, Wordpad, иногда программирование черепашек и ЛогоМиры. Сказать по правде – меня не очень впечатляет.

А вот язык Scratch меня действительно удивил. И довольно быстро я смог научить своих детей этому «странному программированию». Scratch – "объектно ориентированный" язык программирования с "многопоточностью". Странность программирования на языке Scratch заключается в том, что не нужно писать программу в виде текста. Вместо этого, программа составляется из блоков, которые нужно перетаскивать и соединять как кубики Lego.

Давайте по порядку.
Scratch - это бесплатная программа, покупать ее не нужно.
Сперва зайдите на сайт http://scratch.mit.edu/ - это сайт программы Scratch. Найдите на этом сайте кнопку “Download Scratch”. Вот сейчас я загрузил этот файл ScratchInstaller1.4.exe – всего 33Мб, совсем мало по нынешним временам. Теперь нужно запустить его и программа будет установлена. При установке программы вы увидите всякий текст на английском языке – не пугайтесь, просто жмите кнопки Next (Далее) и Install (Установить). После установки язык отображения программы можно установить какой угодно: хоть русский, хоть греческий или арабский.

Теперь запустим программу Scratch.  Вот что мы видим:

Среда программирования Scratch

Окно программы разделено на несколько частей.
Справа вверху большое окно с белым фоном и объектом Кошка в центре.

Кошка Scratch

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

Чуть ниже есть три кнопочки в виде звездочек:

Кнопки-Звездочки

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

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

Объекты в языке Scratch

Объекты и цены можно удалять (правая кнопка мыши и появляется меню) или дублировать: создавать копии существующих объектов. Поведение каждого объекта определяется его программой – скриптом.

В средней части программы можно описывать скрипты-программы объектов, их костюмы и звуки, которые они играют.

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

Редактирование костюмов объекта в языке Scratch

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

Скрипт бегущей кошки на языке Scratch

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

Например, второй скрипт для Кошки может управлять ее положением на экране, слушаясь некоторых клавиш:

cat_ctrl

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

Конечно возникает вопрес – где брать все эти блоки-модули для наших скриптов?

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

Например, вот так выглядят все возможные блоки движения:

Блоки движения в программе Scratch

А вот так выглядят блоки управления:

Блоки управления в программе Scratch

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

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

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

А теперь самое главное! Smile
К компьютеру можно подключить внешнюю плату сенсоров и управление мотором! Программа Scratch может получать сигналы от внешней платы и подавать команды внешней плате! Таким образом, можно писать программы управляющие реальными объектами: лампочками, моторчиками!

Зайдите в пункт меню Редактировать/Показать блоки моторов. В списке блоков Движение и Сенсоры появятся еще дополнительные блоки:

Блоки моторов в программе Scratch

и  

Блоки сенсоров, внешних датчиков в программе Scratch

Так вот, плата у нас есть – это плата Марсоход. Попробуем подключить ее к компьютеру в качестве платы для Scratch. Про это и будет моя следующая статья.

 

Комментарии  

-1 #29 Татьяна 31.05.2017 17:24
Качать с этой страницы https://scratch.mit.edu/scratch_1.4/
-2 #28 Stem72 23.01.2017 06:18
Здравствуйте! Язык указали можно выбрать любой, почему же не описали как это сделать, как раз на первом этапе и застрял на этом моменте.
-2 #27 Vladik-Mladik 29.10.2016 21:31
Всё равно ничего не понятно, билеберду опять напридумывали, потому как!!! Абсолютно не умеют создавать что-либо хорошее простое, а умеют часто и много, создавать плохое сложное!!! А вообще, веселей друзья, не унывайте!!! Желаю вам счастья!!!
+1 #26 Ssa 17.11.2015 10:27
Это НЕ язык программировани я. Это среда для визуализации алгоритмов. Это абсолютно бесполезная потеря времени для ребёнка. Его начинают преподавать в 5 классе, а в этом возрасте, даже самые слабые дети знают английский алфавит и простейшие слова.
Рекомендую альтернативу любой из Бэйсиков.
PureBasic или SmallBasic не важно.
В 5 классе у меня ребёнок на гуманитарном учится. решил попробовать. SmallBasic был проглочен в течение лета. И осенью они с друзьями гоняли в написанный пинг-понг. Игра была написана практически без моей помощи, объяснял только "угол падения равен углу отражения" и другие математические приёмы.
А сейчас ему преподают это недоразумение. Сидит номер отбывает.
-4 #25 Рустам 09.06.2014 11:07
В продаже появилось пособие "Творческие задания в среде Scratch. Рабочая тетрадь для 5-6 классов". Ю. Пашковская.
Итогом освоения каждой темы является выполнение проектного задания по созданию мультипликацион ного сюжета, презентации, проведению теста или игры. Все задания носят творческий характер, что позволит учащимся 5–6 классов развивать знания об алгоритмах, полученные в начальной школе в предметной области «Математика и информатика», а также овладевать инструментами программировани я в среде Scratch (Скретч) и применять эти знания и умения при выполнении проектных заданий из других предметных областей. В рабочей тетради задания на компьютере чередуются с письменными упражнениями. Электронное приложение к тетради размещено на методическом сайте издательства (http: // www. metodist. lbz. ru). Пособие рекомендуется использовать как на уроках информатики, так и во внеурочной деятельности школьников.
+2 #24 alinochka 18.01.2014 11:39
где скачать???????? ????????????? :-* :-* :-* :-* :-* :-* :-| :-| :-| :sigh: :sigh: :sigh:
+3 #23 Progrfo 10.11.2013 10:32
А Скретч для детей - самое то! Из минусов, потом переучиваться приходится для того, чтобы сделать хоть что-то на шаг более сложное. Слишком много "скрыто". С другой стороны из-за этой "скрытости внутренних механизмов" его и изучать легко.

Цитирую Mixah:
Этот язык программирования создан для простых задач (но сложные можно сделать, с трудом) нет доступа на сайты, видео, (музыка - можно, но некоторые форматы, картинки - естественно можно), файлам на компьютере и др. Но для изучения в школе подойдет как и ЛогоМиры 2 и 3


я тоже так думал, поэтому попробовал преподавать детям основанный на Java язык Процессинг. Если кому интересно: www.programmingforkids.ru
+1 #22 Влад 17.10.2013 16:21
спс большое :-)
-4 #21 CLOWNheppi552233 16.10.2013 08:11
а я уже скачала только всё равно ни чё не поняла!! :sigh: :sigh: :roll: :roll: :roll: :-) :-) 8) 8) :-* :-* :-* :-? :-?
-3 #20 nckm 03.09.2013 06:59
Цитирую Олег В:
не найду на сайте кнопку “Download Scratch”

скретч можно скачать с его родного сайта http://scratch.mit.edu/
возможно вам понадобится патч к нему, чтобы было 2 мотора
https://marsohod.org/index.php/downloads/doc_download/49----scratch14
0 #19 Олег В 03.09.2013 06:20
не найду на сайте кнопку “Download Scratch”
-2 #18 Ivanovich 02.09.2013 21:22
Поверьте моему опыту. В школе не нужно преподавать устаревшие языки программировани я. От этого ученики начинают ненавидеть предметы информатики и вычислительной техники. Язык программировани я должен быть не сложный и в тоже время, современным. Учеников нужно заинтересовать предметом и они его будут изучать с удовольствием.
Одним из лучший языков программировани я для изучения в школе я считаю PureBasic, потому что он обладает всеми необходимыми качествами - простотой и увлекательность ю для учащихся. Для него имеются компиляторы под многие системы в том числе и бесплатные (Linux) что актуально в наших школах.
0 #17 Олег В 21.06.2013 08:01
подскажите где именно можно скачать Scratch?
-2 #16 Skratch 04.02.2013 15:38
ребят подскажите как сделать программу : сделать программу для рисования 20-ти звезд на черном небе подскажите скрипт
-20 #15 влад 24.11.2012 01:39
это хрень полная говно. не советую сдесь лазить.
:sigh:
-7 #14 Illy 27.10.2012 07:33
как зделать игру в контакт
+1 #13 nckma 17.10.2012 07:06
Цитирую Аким:
А где скачать можно? :-*

http://scratch.mit.edu
+6 #12 Аким 14.10.2012 07:35
А где скачать можно? :-*
+6 #11 Mixah 19.02.2012 10:57
Этот язык программировани я создан для простых задач (но сложные можно сделать, с трудом) нет доступа на сайты, видео, (музыка - можно, но некоторые форматы, картинки - естественно можно), файлам на компьютере и др. Но для изучения в школе подойдет как и ЛогоМиры 2 и 3
-2 #10 Voevod_fli 29.12.2011 16:04
Мм... А им возможно написать клиент к браузерной игре? :lol:
+9 #9 olga 06.10.2011 19:47
Всем ,кому интересна эта программа, приглашаю на сайт, где собраны видеоуроки по Скрэтч
http://scratch.sostradanie.org/
+6 #8 dimonii 14.06.2011 16:31
очень интересно
когда будет про это следующая статья ;-)
+7 #7 Safred 15.02.2011 11:00
Цитирую nckm:
Цитирую Safred:
Цитирую nckm:
Цитирую Safred:
а игру с её помощью можно сделать?

простенькую игру конечно можно

а разместить её вконтакте в приложениях можно будет?

А что такое "вконтакте"?

соц.сеть в контакте))).там приложения есть,игры...
+7 #6 nckm 15.02.2011 07:32
Цитирую Safred:
Цитирую nckm:
Цитирую Safred:
а игру с её помощью можно сделать?

простенькую игру конечно можно

а разместить её вконтакте в приложениях можно будет?

А что такое "вконтакте"?
-1 #5 Safred 14.02.2011 13:56
Цитирую nckm:
Цитирую Safred:
а игру с её помощью можно сделать?

простенькую игру конечно можно

а разместить её вконтакте в приложениях можно будет?
-2 #4 nckm 14.02.2011 13:30
Цитирую Safred:
а игру с её помощью можно сделать?

простенькую игру конечно можно
+6 #3 Safred 13.02.2011 13:03
а игру с её помощью можно сделать?
+4 #2 qwerewq 30.12.2010 16:19
Как я понял идет речь не о программировани и, а о составлении алгоритмов
-1 #1 VEC7OR 27.11.2010 02:40
Круть, конструкции языка подозрительно напоминают Verilog ;-)

Добавить комментарий



facebook  GitHub  YouTube  Twitter
Вы здесь: Начало Статьи о разном Язык программирования для детей Scratch