Скрач

от Уикипедия, свободната енциклопедия
Направо към: навигация, търсене
Скрач (Scratch)
367306-scratch-from-mit.jpg
Реализиране през 2003 г.
Софтуерен разработчик Митчъл Резник
Стабилна реализация 2.1 / 28 август 2015 г.
Софтуерен лиценз GPLv2 и Scratch Source Code License
Уебсайт scratch.mit.edu
Скрач (Scratch) в Общомедия

Скрач (Scratch) е визуален език за програмиране. Езикът е напълно безплатен и може да се използва през десктоп и онлайн мултимедиен инструмент за разработка. Използва се от ученици, учители, родители и деца като инструмент за лесно създаване на игри, помагайки на обучаващите се да бъдат по-добре подготвени да навлязат в света на компютърното програмиране.

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

За да се програмира със Скрач не е необходима предварителна подготовка и познания по някакъв език за програмиране, тъй като езикът е в категорията на event-driven програмирането или език за визуално програмиране. Реално не се пише код, а програмата се създава с действията на този, който я пише, чрез множество активни обекти, наречени "спрайтове" (sprites). Спрайтовете могат да бъдат векторни или битмап изображения, спрайтове създадени от нулата чрез опростен редактор, част от Скрач платформата или да бъдат импортирани от външни източници включително и уебкамери.

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

Скрач е създаден с финансовата подкрепа на Националната фондация за наука на САЩ (National Science Foundation), Microsoft, Intel Foundation, Nokia и собствени средства на MIT Media Lab.

Произход на името[редактиране | редактиране на кода]

Името Скрач (Scratch) е свързано с техниката в музиката Скреч (Scratch).Скреч е DJ или Диджей техника, която произвежда различни звуци, следствие на движението напред и назад на винилова плоча по една въртяща се посока от грамофона. Обикновено звукът в съчетан с насичането му и оформяне от DJ миксер.

Както в музиката и тук се взима различни парчета код (sprites), миксират се, комбинират се, свързват се по различни креативни начини и се създава нещо ново и интересно.

Мотото на Скрач е "Представи си, програмирай, споделяй". Това мото следва и основния принцип при създаване на Скрач проект. На първо място трябва да имаш идея, да си я представиш и визуализираш, след това да я програмираш в Скрач и накрая да я споделиш със света.

История[редактиране | редактиране на кода]

Първата уеб-базирана версия на Скрач, пусната през 2005 г.

Скрач първоначално е разработен като мрежово-базирана среда за програмиране с богато медийно съдържание, специално проектирана да помогне на деца намиращи се в неравностойно положение и от малцинствени групи, като провокира у тях желание за развитие в сферата на информационните технологии и разработката на софтуер. Основани са компютърни клубове по програмата на MIT Media Lab - "Компютърен Клуб" (Computer Clubhouse), за деца на възраст межу 8 и 18 години, в които те развиват интереса си към новите технологии.

В клубовете те се учат как да използват Скрач, за да създават проекти свързани с дигиталните изкуства, като музика създавана чрез сензори следящи движенията на човек, видеоклипове със специални ефекти създадени чрез програмируеми филтри и заснети чрез камера движения, роботи снабдени с автоматизирани движения. Инфраструктурата на Скрач съчетана с креативността на учениците дава възможност да изразят себе си по един нов, кретивен и интересен начин, и да споделят творенията си със света, преодолявайки всякакви културни, езикови и религиозни граници.


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

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

MIT Media Lab и тяхната Lifelong Kindergarten детска група, водени от Мичъл Резник (Mitchel Resnich), и неговата консултантска компания Playful Invention Company, съосновна с Браян Силвърман (Brian Silverman) и Паула Бонта (Paula Bonta), разработват заедно първата десктоп версия на Скрач през 2003 г. От 2007 г. насам проектите създадени чрез Скрач могат да бъдат споделяни онлайн с други потребителим които да ги "миксират" и променят.

Историята на Scratch в България датира от 2008г. От тогава насам са проведени редица обучения (за учащи и учители), курсове, конкурси, ежегодно се провежда и ден на Scratch в България. През 2008 г. е проведен за пръв път семинар по визуалното програмиране във Варненски свободен университет "Черноризе Храбър" .През 2015 година, по повод 1 юни - Деня на детето, СофтУни организира специален курс по "Визуално програмиране" за деца. Обучението е първото в София и е специално подготвено за завършилите успешно учебната година ученици от първи и втори клас.

  • Първият уеб-базирана Скрач версия е създадена през 2005 г.
  • Първата публична версия на Скрач е пусната в месец Май 2007 г.
  • Скрач 2.0 е пуснат в месец Май 2013 г. 
  • Януари, 2015 година е регистриран пет милионният акаунт в сайта на Скрач

Приложение[редактиране | редактиране на кода]

Езикът Скрач набира популярност в цял свят, като през 2015 г. платфорамта е преведена на 40 езика и се ползва всекидневно в класни и извънкласни занятия от много училища, клубове и обучителни центрове.

Скрач е много подходящ за въвеждащ в света на програмирането език, благодарение на неговата относителна лекота и възможност за лесната и бърза направа на интересни програми, както и заради възможността уменията научени чрез Скрач да могат да бъдат приложени към други основни програмни езици като Python, Java и C# (CSharp).

Скрач не е ограничен само в създаване на програми, тъй като е визуален език за програмиране и позволява на програмисти да създадават анимирани истории като "The Pizza Dude", "Haiku", или "Gemclan". По-големите ученици, с интереси към фотографията, могат да се използват програмата "Photo Journalism" създаден със Скрач, който запознава обучаващият се с основите на фотографията и фотожурнализма. Студентите, които искат да се специализират в математиката, могат да използват програмите "Lemonade Stand", "Dino Odd and Even", "Data Workshop", или "Ellipserator", които се фокусират основно върху геометрията.

Гъвкавостта на Скрач позволява на учителите да създават концептуални и визуални уроци, интерактивни и интересни лабораторни задачи. Скрач е много полезен инструмент за създаване на анимации, които помагат за визуализиране на трудни за разбиране без помощни средства концепции като развитието на една растителна клетка, воден цикъл, Термометъра на Галилео и много други. В рамките на социалните науки, учителите могат да създават викторини, игри и уроци, които стимулират ума взаимодействат с ученика, представяйки му информацията по интересен и иновативен начин.

Използването на Скрач позволява на младите хора да разберат логиката на програмиране и как креативно да работят и да си сътрудничат един с друг. Скрач помага за създаване на  "смислени и лесноразбираеми образователни проекти", които дават възможност на учениците да развият практическите си умения и да прилагат теоретичните си знания в реална работеща среда.


Когато учениците създават Скрач-проекти, те получават умения за:

  • Творческо мислене
  • Комуникация
  • Системен анализ
  • Проектиране
  • Непрекъснато обучение

Потребителски интерфейс[редактиране | редактиране на кода]

Потребителски интерфейс на Скрач.

В горната лява част на екрана се намира полето с резултатите Stage. Те са представени с големи и малки изображения. В тази част се използват (x, y) координатите като (0, 0) е центъра на полето с резултатите. В долната лява част на екрана Sprite list са представени всички Sprite изображения.

Има много начини за създаване на спрайтове и декори. Като начало потребителите могат да създадат ръчно свое собствено sprite изображение, чрез "Paint Editor". Друг начин е потребителите да изберат готово изображение от Sprite библиотеката, където се намират предишните създадени от потребителя изображения, могат да се качват изображения от файл или чрез камера.

След като се избере sprite изображение в долната лява част на екрана, могат да бъдат приложени блокове от команди от Blocks Palette върху изображението като се използва влачене и пускане в дясната част на екрана Scripts Area, където се съдържат всички скриптове асоциирани с дадения спрайт. В менюто Scripts (Сценарий), се намират различни блокове като Движение, Контрол, Сетива, Звук и др. Всеки блок може да бъде тестван при различни условия и параметри.

Hello, World! на Скрач
Категория Описание    Категория Описание
  Движение

(Motion)

Премества и променя ъглите на спрайт.      Събития

(Events)

Съдържа хендлъри за събития поставени върху всяка група от блокове.
  Външност

(Looks)

Промяна на облика на спрайт, размерите му и смяна на декора.   Контрол

(Control)

Условни изрази if-else, "forever", "repeat" и "stop".
  Звук

(Sound)

Пуска аудио файлове и програмируема звукова последователност.   Сетива

(Sensing)

Спрайтовете могат да взаимодействат с околностите създадени от потребителя.
  Молив

(Pen)

Рисуване с помощта на молив (дебелина, цвят и сянка).   Оператори

(Operators)

Математически оператори, генератор на случайни числа, (И, ИЛИ) условия за сравнение на позициите на спрайт.
  Данни

(Data)

Използване и дефиниция на променливи.   Още блокове

(More Blocks)

Създаване на блокове и управление на външни устройства.

До Scripts менюто се намират и Costumes (Костюми), където потребителят може да променя вида на спрайт, за да създаде различни ефекти, анимации. Следва Sounds (Звуци) менюто, където могат да се вмъкват музика и звуци към спрайт.

Потребителска общност[редактиране | редактиране на кода]

Сайта на Скрач - 2015 г.

Скрач се използва на много места - училища, музеи, библиотеки, обществени центрове и домове. Например, по - малките деца могат да създават проекти, използвайки ScratchJr (Скрач Джуниър) или да използват Скрач със своите родители или по-големи братя и сестри. Студентите в университетите/колежите също използват Скрач във въвеждащите уроци и лекции. С помощта на файлове с локални настройки свеалени от Интернет със Скрач, езика на интефейса може да бъде сменен друг по избор, тъй като Скрач се използва навсякъде по света. Университета Джон Хопкинс - Център за надарени и талантливи юноши предлага онлайн курс по програмиране на Скрач за ученици от 6 клас нагоре

Онлайн общност[редактиране | редактиране на кода]

Мотото на Скрач онлай общността е "Представи си, програмирай, споделяй", показва, че споделянето и социалните аспекти на творчеството са важна част от философията, стояща зад Скрач.

Скрач проектите не са известни като "черни кутии", а като обекти за създаването на нови проекти. Проектите мога да бъдат качени директно от средата за разработка на сайта на Скрач и всеки член на общността може да свали сорс кода на всеки проект и да го използва в собствени проекти. Потребителите могат да коментират, да отбелязват да добавят в любими и да "харесват" проектите на други протелбители, да следват други потребители, за да имат достъп до техните проекти, да следят тяхната активност и да споделят идеи. На сайта често има състезания, които трябва да насърчават създаването и споделяето като предоставят на потребителите основна концепция за дизайн. През 2008 година Скрач онлайн общността (наречена още ScatchR) получава почетно споменаване на АРС Електроника фестивала. Също така има и онлайн общност за учители и преподаватели наречена ScratchEd.

Характеристики[редактиране | редактиране на кода]

Текущата версия на Скрач не гледа на прецедурите като първокласна структура и има ограничени възможности при четене и писане на файлове в Scratch 2.0 Extension Protocol (експериментално разширение, което позволява взаимодействие между Скрач и други програми. Extension Protocol също така позволява на Скрач да работи с утройства като Lego Mindstorms или Ардуино. В допълнение Скрач 2.0 подържа само едномерни масиви, известни още като "lists". Числата с плаваща запетая и символните низове се поддържат от версия 1.4 насам, но с ограничени възможности при манупулацията на символните низове. На 6 май 2013, Скрач затовориха за около 3 дни, за да обновят до Скрач 2.0. Обновлението промени цялостния облик на сайта и включваше онлайн едитор. Нова бета версия на Scratch 2 Offline Editor е налична към момента. Тази версия заменя старата Скрач 2.0.

Създадени са и нови деривати наречени Scratch Modifications, които използват сорс кода на версия 1.4 Новите програми са вариации на Скрач, които имат няколко допълнителни блока или промени в GUI.

Сорс кода на Скрач и неговите деривати са базирани на Squeak, който пък е базиран на Smalltalk-80. Версия 2.0 на Скрач е имплементирана в AsctionScript с експериментален JavaScript базиран "преводач", който се разработва паралелно.

Catrobat е визуален език за програмиране за приложения за смартфони и таблети вдухновен от Скрач. Pockеt Code е приложение, с което потребителите могат да създават, да свалят и качват програми създадени на Catrobat.

Скрач проекти[редактиране | редактиране на кода]

"The Pizza Dude", ремиксиран от xXMikeyPXx, 17.10.2007 г.

"Photo Journalism", ремиксиран от journogeek, 09,07,2008 г.

"Dino Odd and Even", създаден от Marg68, 26,02,2008 г.

"Square Roots! Calculator", създаден от Technology-Pro-101, 28.07.2015 г.

"Dance", създаен от ivanstst "Team Bohr", 17.11.2015 г.

Източници[редактиране | редактиране на кода]

Официалният сайт на Scratch, посетен 22.10.2015 г.

"Scratch Wiki", Уикипедиа за Скрач, посетен 15.11.2015 г.

Видео "Представяне на Скрач", YouTube. MITScratchTeam, посетен 15.11.2015 г.

Превю на Скрач 2.0, YouTube. MITScratchTeam, посетен 15.11.2015 г.

Външни линкове[редактиране | редактиране на кода]