Scratch
Краткое описание языка | Среда программирования, которая позволяет детям создавать собственные анимированные и интерактивные истории, игры и другие произведения. Этими произведениями можно обмениваться внутри международной среды, которая постепенно формируется в сети Интернет.
Scratch — это учебный блочный язык программирования, позволяющий ученикам создавать игры, цифровые истории. Среда разработки дает возможность детям редактировать аудиофайлы и монтировать небольшие, но полноценные видеоролики. В новые версии языка создатели обещают добавить функционал для создания собственных мобильных приложений. |
---|---|
Компетенции в каких сферах формирует | Knowledge Constructor, Innovative Designer, Computational Thinker, Creative Communicator, Global Collaborator |
Парадигмы программирования | Функциональное программирование, Императивное программирование, Объектно-ориентированное программирование |
Возрастная категория | 7 |
Назначение языка (Общее / Учебное) | Мини-язык для обучения |
Visual_Text_Blocks | Блоки-Иконки |
Измерение (2D/3D/Tangible) | 2D |
Область знаний | |
Открытость продукта | Открытый |
Address | https://scratch.mit.edu |
Предки (Ancestors) | Squeak, Agentsheets, Лого |
Потомки (Descendants) | Snap!, GP, ScratchJR, App Inventor |
Активность в данный момент | Project is active |
Доступны ремиксы? | Да |
Год создания | 2006 |
Создатели | Резник |
Поясняющее видео | |
Используется для создания мобильных приложений? | Нет |
- Scratch упоминается в свойствах следующих страниц
- 3D Wireframes, AAnosov, Additional Keys, Advanced Platformer Physics, Advanced Platformer Tutorial, AlekhinaAA, Anastasia Lugovaya, AnotnovVA207, Arduino, Backpack, Black0mesa, BoboevaSN, BondarenkoEV, Borisova Tanya, Children Learning to Code, Codey Rocky, Creating a Quiz, Die Toten Engel, Egorovsn051, ElenaGrcaheva, Fedorovaai, Finch Robot, Flocking (model), Harvey, Heap, How to Create a Slideshow, How to Keep Score in a Game, How to Make a Basic Platformer, How to Make a Basic Shooter, How to Make a Clicker Game, How to Make a Tower Defense Game, How to Move Sprites with the Arrow Keys, How to Move a Sprite in a Spiral, K-means, Karpov Alexandr, Kay, LEGO Boost, LEGO Mindstorms EV3, LEGO WeDo, LebedevAV, Lego Mindstorms, Lego Spike Prime, LesikAA, LoshankovAO, Milena.aslamazova, Minsky, Movement, Non-Euclidean Game Tutorial, NovikovPN, Object Attraction… следующие результаты
Scratch это - среда программирования, которая позволяет детям создавать собственные анимированные и интерактивные истории, игры и другие произведения. Этими произведениями можно обмениваться внутри международной среды, которая постепенно формируется в сети Интернет. Скретч базируется на традициях языка Лого и первая версия языка была написана на языке Squeak.
Mitchel Resnick рассказывает о Scratch
Участник:Patarakin рассказывает о Scratch на самосборе 2007 года
Введение (2007 год)
Может быть не всем в России знаком язык Лого и его агент-исполнитель Черепашка, но уж конструкторы Лего знают все. В среде скретч используется метафора кирпичиков Лего, из которых даже самые маленькие дети могут собрать простейшие конструкции. Но, начав с малого, можно дальше развивать и расширять свое умение строить и программировать. Скретч создавался специально для того, чтобы подростки 10 – 16 лет использовали его самостоятельно в сети внешкольного обучения на базе Компьютерных Клубов, в городах и районах с низким уровнем доходов. Эта новая технологическая среда позволяет им выразить себя в компьютерном творчестве.
Разработчики этого направления во главе с Митчем Резником и Аланом Кеем считают, что наиболее важным в мощных и недорогих персональных компьютерах является то, что они создают новую среду чтения и письма. В этой новой среде люди могут обсуждать и играть с новыми мощными идеями совсем не так, как они это делали с книгами. С этим и связана работа, которую ведет исследовательская группа во главе с Аланом Кеем со средой со Сквик. Цель деятельности группы - помочь детей научиться думать лучше и глубже, чем это могут делать большинство взрослых. Для достижения этой цели они создали среду Сквик как новую форму электронной бумаги, на которой могут быть представлены новые пути представления новых мощных идей. Теперь в среде Сквик есть новые письменные образцы этой новой литературы и эти образцы публикуются в сети Интернет, для того, чтобы и взрослые и дети могли бы читать и играть с ними.
Возможность собрать программу из отдельных кусочков и обсудить задачу, которую выполняет каждый отдельный фрагмент, существует и в постепенно входящей в мир компьютерного образования среде Сквик и ее клонах Alice и Скретч. Учебная среда Скретч появилась совсем недавно и делает в настоящее время свои первые шаги. Ее будущее выглядит очень многообещающим, поскольку в основании среды лежит опыт Лого, мощные возможности современного языка Сквик и стоят такие люди как Мич Резник и Алан Кей. Кей в предисловии к языку Сквик подчеркивает, что компьютеры создают новую форму электронной бумаги для чтения и письма. На этой новой электронной бумаге люди могут обсуждать и играть с новыми мощными идеями совсем не так, как они это делали с книгами. Мы можем получать новое визуальное представление о гипотезах и теориях, можем связывать и сравнивать разные идеи друг с другом. Если мы будем помнить о новых возможностях, которые открывают перед нами электронные формы общения и сообщного мышления, то сможем стремиться не просто к обучению чтению и письму, но и к более глубокому усвоению знаний. Новый стиль усвоения знаний даст ученикам возможность читать литературу, обдумывать идеи и представлять их в форме доступной для обсуждения и критики.
В Скретче проявляются многие идеи программирования, свойственные среде Лого и Лего-Лого. Но, теперь они воплощены на более высоком уровне. Пользователи могут собирать свои программы-процедуры из блоков так же, как они собирали конструкции из кирпичиков Лего. Из конструкций и управляющих структур могут быть собраны различные агенты, выполняющие простые инструкции и, следовательно, обладающие поведением. Эти агенты могут взаимодействовать между собой и воссоздавать сообщество в среде Скретч.
Скретч может использоваться в различных формах: в школах, музеях, центрах дополнительного обучения, дома. Он создавался для учеников 8 - 16 лет , но и дети более раннего возраста могут работать над Скретч проектами вместе с родителями или старшими братьями или сестрами, да и студенты ВУЗов могут использовать Скретч на занятиях в компьютерных классах.
Скретч и навыки 21 века
Когда ученики создают проекты в Скретче, они осваивают множество навыков 21 века, которые будут необходимы для успеха:
- творческое мышление,
- ясное общение,
- системный анализ,
- беглое использование технологий,
- эффективное взаимодействие,
- проектирование,
- постоянное обучение
Кирпичики программы
Скретч разрабатывался как новая учебная среда для обучения школьников программированию и позиционировался авторами как альтернатива культуре PhotoShop. В Скретче можно создавать фильмы, играть с различными объектами, видоизменять их вид, перемещать их по экрану, устанавливать формы взаимодействия между объектами. Это объектно-ориентированная среда, в которой блоки программ собираются из разноцветных кирпичиков команд точно так же как машины собираются из разноцветных кирпичиков в конструкторах Лего. Опыт и метафоры Лего-Лого в среде Скретч лежат на поверхности.
- Как пользоваться визуальными блоками в вики?
- благодаря специальному расширению в вики можно использовать текстовые блоки. Множество примеров в категории Category:Scripting Tutorials
когда спрайт нажат сказать ["Привет!"] идти (выдать случайное от (20) до (40)) шагов играть звук [мяу v] ::sound если <касается [край v]>, то повернуться к [указатель мышки v] конец
- Как встроить проект Scratch в текст вики-статьи?
- Надо указать id проекта внутри блока <scratch project="id" />
Мы можем взять любой объект и осуществить над ним действия:
- видоизменить его внешний вид при помощи фиолетовых команд-кирпичиков внешнего вида;
- переместить его при помощи синих команд кирпичиков перемещения;
- поместить команды перемещения и видоизменения внутрь оранжевых блоков управления;
- добавить к управляющим блокам фиолетовые кирпичики звуков;
- и т.д.
В результате выполнения простых команд может складываться сложная модель, в которой будут взаимодействовать множество объектов, наделенных различными свойствами. Начальный уровень программирования столь прост и доступен, что Скретч рассматривается в качестве средства обучения не только старших, но и младших школьников. См. Сообщество Скретч
Scratch, PicoBoard и Arduino
Замечательной встроенной возможностью Scratch является наличие в нём группы меню "сенсоры", предназначенной для работы с конечным оборудованием - сенсорами и платой из набора PicoCricket, или известного более старшим пользователям платы Arduino.
Набор PicoCricket - это всё та же разработка MIT media lab. PicoCricket и опыт его использования в работе со Scratch в будущем привели к созданию известного конструктора Lego Mindstorms NXT.
Руководство пользователя
Визуальные команды
Scratch/Управление
Scratch/Управление
forever
повторять всегда
всегдаrepeat until ()
повторять пока не ()
повторять пока не ()if <> then
если <> , то
если <> , тоend
конец
конецwait () secs
ждать () секунд
ждать () секундrepeat ()
повторить () раз
повторить () разwait until ()
ждать до ()
ждать до ()when I start as a clone
когда я начинаю как клон
когда я начинаю как клонdelete this clone
удалить клон
удалить клонelse
иначе
иначеcreate clone of [myself v]
создать клон [себя самого v]
создать клон [себя самого v]stop [all v]
стоп [все v]
стоп [все v]
if <> then else |
если <>, то иначе |
если <>, то
иначе |
Например, падающие с неба капли или снежинки
когда щёлкнут по зелёному флагу повторять всегда создать клон [себя самого v] перейти в x (выдать случайное от (-180) до (180)) y (200) плыть (3) секунд в точку x (положение x) y (-180) удалить клон
Scratch/Движение
Scratch/Движение
set x to ()
установить x в ()
установить x в ()set y to ()
установить y в ()
установить y в ()move () steps
идти () шагов
идти () шаговgo to x:() y:()
перейти в x:()y()
перейти в x:()y()turn @turnLeft () degrees
повернуть влево на () градусов
повернуть влево на () градусовturn @turnRight () degrees
повернуть вправо на () градусов
повернуть вправо на () градусовповернуть вправо на (15) градусов
go to x:(0) y:(0)
перейти в x:(0) y:(0)
перейти в x:(0) y:(0)go to [mouse-pointer v]
перейти в [указатель мышки v]::motion
перейти в [указатель мышки v]point towards [mouse-pointer v]
повернуться к [указатель мышки v]
повернуться к [указатель мышки v]direction
направление
направлениеpoint in direction (90 v)
повернуть в направлении (90) v]::motion
повернуть в направлении (90 v)change y by ()
изменить y на ()
изменить y на ()if on edge, bounce
если на краю, оттолкнуться
если на краю, оттолкнутьсяchange x by ()
изменить x на ()
изменить x на ()glide () secs to x:() y:()
плыть () секунд в точку x:() y:()
плыть () секунд в точку x:() y:()x position
положение x
положение xy position
положение y
положение y
Scratch/Внешность
Scratch/Внешность
think ()
думать ()
show
показаться
switch backdrop to [backdrop1 v] and wait
сменить фон на [backdrop1 v] и ждать
say []
сказать []
change [color v] effect by ()
изменить [color v] эффект на ()
next backdrop
следующий фон
say [] for () secs
говорить [] в течение () секунд
backdrop name
имя фона
set [color v] effect to ()
установить эффект [color v] в значение ()
backdrop #
фон #
фон #hide
спрятаться
switch costume to [costume1 v]
сменить костюм на [costume1 v]
switch backdrop to [backdrop1 v]
сменить фон на [backdrop1 v]
size
размер
set size to ()%
установить размер ()%
change size by ()
изменить размер на ()
go back () layers
перейти назад на () слоев
next costume
следующий костюм
costume #
костюм #
go to front
перейти в верхний слой
clear graphic effects
убрать графические эффекты
think () for () secs
думать () () секунд
Scratch/Музыка
Scratch/Музыка
play note (60 v) for (0.5) beats
играть ноту (60 v) (0.5) тактов
stop all sounds
остановить все звуки
set volume to ()%
установить громкость ()%
play sound [pop v] until done
играть звук [pop v] до конца
rest for () beats
подождать () тактов
set tempo to (60) bpm
установить темп (60) bpm
play sound [pop v]
играть звук [pop v] ::sound
play drum (1 v) for (0.2) beats
барабану () играть () тактов::sound
set instrument to (1 v)
выбрать инструмент (1 v)
change volume by (-10)
изменить громкость на (-10)
change tempo by (20)
изменить темп на (20)
tempo
темп
volume
громкость
Scratch/События
Scratch/События
when this sprite clicked
когда спрайт нажат
когда спрайт нажат<when I receive [message1 v]
когда я получу [сообщение1 v]
когда я получу [сообщение1 v]broadcast [message1 v]
передать [message1 v]
передать [сообщение1 v]broadcast [message1 v] and wait
передать [Собираем знания v] и ждать::events
передать [message1 v] и ждатьwhen @greenFlag clicked
когда щелкнут по @greenFlag
когда щелкнут по @greenFlagwhen [space v] key pressed
when [space v] key pressedкогда клавиша [пробел v] нажата
когда клавиша [пробел v] нажатакогда клавиша [вправо v] нажата
когда клавиша [вправо v] нажата
when backdrop switches to [backdrop1 v]
когда фон меняется на [backdrop1 v]
когда фон меняется на [backdrop1 v]when [loudness v] > (10)
когда [громкость v] > (10)
когда [громкость v] > (10)
Scratch/Сенсоры
Scratch/Сенсоры
Reporter
(answer)
(ответ)
(ответ)username
имя участника
имя участникаmouse x
мышка по x
mouse y
мышка по y
(distance to [sprite1 v])
(расстояние до [sprite1 v])
timer
таймер
([x position v] of [sprite1 v])
([x position v] of [sprite1 v])
days since 2000
дней с 01.01.2000
(current [second v])
(current [second v])
Boolean Blocks
<touching color [#000000]?>
<касается цвета [#000000]?>
<касается цвета [#000000]?>color () is touching ()?
цвет () касается ()?
<touching [sprite1 v]>
<касается [sprite1 v]>
<касается [sprite1 v]>
mouse down?
мышка нажата?
key [space v] pressed?
клавиша [пробел v] нажата?
клавиша [пробел v] нажата?
Stack Blocks
reset timer
перезапустить таймер
установить прозрачность видео ()%
turn video [on v]
повернуть видео на [включить v]
set video transparency to (0)%
set video transparency to (0)%
ask [What's your name?] and wait
спросить [А тебя как зовут?] и ждать
спросить [А тебя как зовут?] и ждать
Рисование - Scratch/Перо
Scratch/Данные
Scratch/Данные
Переменные
show variable [variable v]
показать переменную [variable v]
показать переменную [variable v]hide variable [variable v]
скрыть переменную [variable v]
set [variable v] to ()
задать [variable v] значение ()
задать [variable v] значение ()change [variable v] by ()
изменить [variable v] на ()
изменить [variable v] на ()
Список
item (1 v) of [list v]
элемент (1 v) из [list v]
элемент (1 v) из [list v][list v] contains ()?
[список v]содержит ()?
hide list [list v]
скрыть список [list v]
show list [list v]
показать список [list v]
add [thing] to [list v]
добавить [thing] к [list v]
replace item (1 v) of [list v] with [thing]
заменить элемент (1 v) в [list v] на [thing]
insert [thing] at (1 v) of [list v]
вставить [thing] в (1 v) из [список v]
length of [list v]
длина списка [list v]
delete (1 v) of [list v]
удалить (1 v) из [list v]
Scratch/Операторы
Scratch/Операторы
Возвращает сообщение
() mod ()
остаток от деления () на ()
round ()
округлить ()
() or ()
() или ()
pick random () to ()
выдать случайное от () до ()
выдать случайное от (0) до (180)- Например,
ждать (выдать случайное от (number1) до (number2)) секунд
- Например,
length of ()
длина ()
[sqrt v] of (9)
[квадратный корень v] от (9)
- Например,
спросить [А тебя как зовут?] и ждать говорить (слить (ответ) и (длина (ответ))) в течение (2) секунд
(() + ())
(() + ())
(() + ())>join [hello] [world]
слить [привет] и [ мир!]
слить[привет] и [ мир!](letter (1) of [world])
(буква (1) в [world])
буква (1) в [мир]- Например,
(буква (temp) в (string1))
задать [partilScroll v] значение (слить (partilScroll) и (буква (temp) в (string1)))
- Например,
Логические операторы
<[] contains [] :: operators>
<[] содержит [] :: operators>
<[] > []>
<[] > []>
<[] > []>- Например,
если<(A) > (B)>, то
- Например,
not ()
не ()
не ()() and ()
() и ()
() и ()- Например,
если<(условие1) и (условие2)>, то
- Например,
Scratch/Другие блоки
Scratch/Другие блоки
define custom block
определить РисуемДом
определить РисуемДом блок
custom block ::custom
РисуемДом ::custom
РисуемДом ::custom
Создаем процедуру и в дальнейшем вызываем процедуру.
определить Сбор Знаний повторять пока не (длина списка [Книга v]) < [1000] создать клон [себя самого v] конец
Моторы
set %m.motor power to ()
задать мощность %m.motor значение ()
set rotation style %m.rotationStyle
стиль вращения %m.rotationStyle
turn %m.motor on for () secs
включить %m.motor на () секунд
set %m.motor2 direction to %m.motorDirection
задать для %m.motor2 направление %m.motorDirection
Видео
set video transparency to ()%
установить прозрачность видео ()%
turn video %m.videoState
повернуть видео на %m.videoState
video %m.videoMotionType on %m.stageOrThis
видео %m.videoMotionType на %m.stageOrThis
Ссылки
- Официальный сайт Скретч
- Творческая группа "Scratch в школе"
- Scratch по-русски : видеоуроки, задания, сообщество российских скрэтчеров
- Учитесь со Scratch! Сообщество на русском языке
- Украинское сообщество Скретча
- Тематическая группа “Scratch. Нацарапаем игрушку?” на сервисе ВКонтакте
- Группа Скретч на сервисе ВКонтакте
- Learning Squeak from Scratch
- Scratch Contest Winners http://scratch.mit.edu/users/binocle
- Scratch in Russia
- Scratch Gallery 1
- Скретч для Second Life
- Русскоязычная Вики