Jos etsit helppoa tapaa oppia koo­daa­maan, et tarvitse etsiä enää. Vaikka Scratch on suunnattu en­si­si­jai­ses­ti lapsille, kuka tahansa voi käyttää sitä koo­daa­mi­sen op­pi­mi­seen. Tässä ope­tus­oh­jel­mas­sa selitämme, mikä Scratch on ja miten koo­daa­mi­nen Sc­ratc­hil­la toimii.

Mikä on ai­nut­laa­tuis­ta Scratch-oh­jel­moin­nis­sa?

Scratch perustuu graa­fi­seen käyt­tö­liit­ty­mään, jonka avulla koo­daa­mi­nen on mah­dol­lis­ta ilman mo­ni­mut­kais­ta kie­li­syn­taxia tai koo­di­ri­vien kir­joit­ta­mis­ta. Scratch on suun­ni­tel­tu en­si­si­jai­ses­ti koo­daa­mi­sen aloit­te­li­joil­le. Siksi käy­tet­tä­vyys on etusi­jal­la mo­ni­puo­lis­ten toi­min­to­jen sijaan. Näistä ra­joi­tuk­sis­ta huo­li­mat­ta Scratch säilyttää kuitenkin joitakin pe­rin­teis­ten oh­jel­moin­ti­pa­ra­dig­mo­jen tärkeitä omi­nai­suuk­sia. Scratch on:

  • vi­su­aa­li­nen: kaikki Scratch-elementit esitetään ym­mär­ret­tä­väl­lä graa­fi­sel­la esi­tyk­sel­lä. Esi­mer­kik­si oh­jel­moin­ti­ko­men­to­ja esitetään lohkoilla. Lisäksi ne voidaan lisätä ja yh­dis­tel­lä kätevästi vetämällä ja pu­dot­ta­mal­la.
  • Ob­jek­ti­suun­tau­tu­nut: Scratch-oh­jel­moin­nis­sa ei ole luokkia tai pe­rin­tä­jär­jes­tel­mää. Kun kyse on datan kap­se­loin­nis­ta (mää­ri­tel­ty­jen ra­ja­pin­to­jen kautta tapahtuva kont­rol­loi­tu pääsy dataan) ja po­ly­mor­fis­mis­ta (objektit voivat ottaa erilaisia da­ta­tyyp­pe­jä), Scratch osoittaa kuitenkin ob­jek­ti­suun­tau­tu­neen oh­jel­moin­ti­pa­ra­dig­man omi­nai­suuk­sia.
  • im­pe­ra­tii­vi­nen: jotkut Scratchin skriptit nou­dat­ta­vat im­pe­ra­tii­vis­ta oh­jel­moin­ti­pa­ra­dig­maa. Esi­mer­kik­si käs­ky­se­kvens­sit mää­rit­te­le­vät, missä jär­jes­tyk­ses­sä toimet on suo­ri­tet­ta­va.
  • Ta­pah­tu­ma­kes­kei­nen: jokainen Scratch-pro­jek­tis­sa käyt­tä­mä­si skripti käyn­nis­tyy heti, kun sen ot­sik­ko­loh­kos­sa mää­ri­tel­ty tapahtuma tapahtuu. Odota-lohkon avulla voit viivästää projektin la­taa­mis­ta, kunnes tietty tapahtuma tapahtuu.
  • valmius käsitellä rin­nak­kai­suut­ta: Scratch tukee alusta alkaen tie­to­ko­neoh­jel­mien jakamista yk­sit­täi­siin ali­kom­po­nent­tei­hin, mikä on rin­nak­kais­oh­jel­moin­nin keskeinen omi­nai­suus.

Scratch-koo­dauso­pas

Sanonta “harjoitus tekee mestarin” pätee myös Scratch-koo­dauk­seen. Vaikka kielen op­pi­mis­kyn­nys on selvästi matalampi kuin pe­rin­teis­ten oh­jel­moin­ti­kiel­ten, Scratch-ym­pä­ris­töön ja Scratch-koo­daus­loh­ko­jen taitavaan käyttöön tu­tus­tu­mi­nen vaatii silti jonkin verran aikaa. Seu­raa­vas­sa ope­tus­oh­jel­mas­sa näytämme, miten koodataan Sc­ratc­hil­la.

Käyt­tö­liit­ty­män na­vi­goin­ti

Jos olet luonut käyt­tä­jä­ti­lin ja kir­jau­tu­nut pro­fii­lii­si, voit valita useista eri vaih­toeh­dois­ta näytön oikeassa ylä­kul­mas­sa si­jait­se­vas­ta va­lik­ko­pal­kis­ta.

Kun napsautat Tili-pai­ni­ket­ta, voit hallita hen­ki­lö­koh­tais­ta pro­fii­lia­si, muuttaa si­jain­tia­se­tuk­sia­si, sa­la­sa­naa­si ja säh­kö­pos­tio­soi­tet­ta­si tai avata ak­tii­vis­ten pro­jek­tien yleis­kat­sauk­sen (Omat asiat). Voit myös kirjautua ulos täältä:

Kuva: Learn Scratch: Settings menu for profile, account and projects
Next to the Account button, you will find two other buttons that let you quickly access your projects (file icon) and any messages you have received(envelope icon).

Muut va­lik­ko­koh­dat tarjoavat seuraavat toiminnot:

  • Kehitys: Scratchin keskeinen osa on vi­su­aa­li­nen ke­hi­ty­sym­pä­ris­tö, jonka voit käyn­nis­tää Kehitys- vä­li­leh­des­tä. Tämän verk­ko­toi­mis­ton avulla voit oh­jel­moi­da kaikki Scratch-so­vel­luk­se­si suoraan se­lai­mes­sa.
  • Tutki: tässä ka­te­go­rias­sa voit tutustua muiden käyt­tä­jien pro­jek­tei­hin. Voit paitsi katsella tai joissakin ta­pauk­sis­sa pelata niitä, myös tar­kas­tel­la niiden oh­jel­moin­tia. Sa­man­kal­tai­set projektit on ryh­mi­tel­ty Studioon.
  • Ideat: Ideat-osiosta löydät erilaisia oppaita ja ohjeita, jotka auttavat sinua omien pro­jek­tien ke­hit­tä­mi­ses­sä – eri­tyi­ses­ti ideoinnin yh­tey­des­sä. Täältä löydät myös linkin Scratch-so­vel­luk­sen la­taa­mi­seen (Windows, macOS, ChromeOS, Android), jonka avulla voit oh­jel­moi­da ilman ak­tii­vis­ta in­ter­ne­tyh­teyt­tä.
  • Tietoja Sc­ratc­his­ta: Jos napsautat Tietoja Sc­ratc­his­ta, sinut ohjataan alustan yleistä tietoa si­säl­tä­väl­le sivulle. Sieltä löydät muun muassa linkkejä li­sä­ai­neis­toon van­hem­mil­le ja opet­ta­jil­le sekä vinkkejä ja usein kysyttyjä ky­sy­myk­siä.

Kuinka koodaus Sc­ratc­hil­la toimii

Scratch-ke­hi­ty­sym­pä­ris­tö muis­tut­taa verk­ko­si­vu­jen ra­ken­nus­työ­ka­lua, mikä ei ole kovin yl­lät­tä­vää, kun otetaan huomioon skriptien ra­ken­nus­pa­lik­ka­mai­nen luonne. Näiden skriptien lisäksi, jotka muo­dos­ta­vat suurimman osan käy­tet­tä­vis­sä olevista kom­po­nen­teis­ta, pro­jek­tiin voi lisätä myös asuja ja ääniä. Sitten voit hallita tai toteuttaa niitä skriptin avulla. Nap­saut­ta­mal­la Lisää laajennus-pai­ni­ket­ta voit laajentaa sk­rip­ti­va­li­koi­maa esi­mer­kik­si vä­ri­ky­näl­lä, vi­deo­tal­len­nus­koo­dil­la tai tekstistä puheeksi -omi­nai­suu­del­la.

Vinkki

Scratch tarjoaa sinulle erilaisia pukuja, ääniä ja skriptejä, jotka voit in­tegroi­da vä­lit­tö­mäs­ti pro­jek­tei­hi­si. Vaih­toeh­toi­ses­ti voit myös tuoda tai tallentaa omia kuvia tai ääniä, jos et löydä tar­vit­se­mia­si vaih­toeh­to­ja käy­tet­tä­vis­sä olevista vaih­toeh­dois­ta. Voit myös luoda omia skriptejä.

Herätä hahmot ja esineet eloon puvilla

Haluatpa sitten oh­jel­moi­da pelin, videon, ani­maa­tion tai vain yk­sin­ker­tai­sen sar­ja­ku­van, sprite-kuvat (hahmot ja muut objektit) ovat tarinasi keskeisiä ra­ken­nus­pa­li­koi­ta. Costumes-vä­li­leh­des­sä voit valita ja in­tegroi­da pro­jek­ti­si mihin tahansa määrään gra­fiik­kaa. Voit valita käy­tet­tä­vis­sä olevista ku­va­vaih­toeh­dois­ta, piirtää objekteja käsin tai tuoda pai­kal­li­ses­ti tal­len­net­tu­ja gra­fii­koi­ta. Jos lait­tees­sa­si on kamera, voit myös ottaa valokuvan.

Kuva: Scratch: costume selection menu
By using different poses for sprites, you can create motion sequences.

Kun olet valinnut puvun, voit muokata sitä. Valitse tätä varten muo­kat­ta­va kohde näytön va­sem­mal­la puolella olevasta valikosta (josta voit poistaa sen milloin tahansa nap­saut­ta­mal­la ros­ka­ko­ri­ku­va­ket­ta). Käytä sitten käy­tet­tä­vis­sä olevia muok­kaus­työ­ka­lu­ja esi­mer­kik­si värien muut­ta­mi­seen, tiettyjen yk­si­tyis­koh­tien pois­ta­mi­seen pyy­he­ku­mil­la, tekstin li­sää­mi­seen tai kohteen vää­ris­tä­mi­seen. Grafiikan muun­ta­mi­nen rasteri- tai vek­to­rigra­fii­kak­si on myös mah­dol­lis­ta. Puvun kentässä voit myös valita puvulle nimen, jota skriptit voivat myöhemmin käyttää vii­tear­vo­na.

Kuva: Scratch: costume editor
Using the fill colour, we’ve adjusted the ap­pea­rance of the figure.

Ikkunan oikeassa ala­reu­nas­sa on Valitse tausta -painike. Tämän vaih­toeh­don avulla voit valita pro­jek­ti­si taus­ta­ku­van. Scratch tarjoaa va­li­koi­man valmiita kuvia, mutta voit myös tuoda omia kuvia tai jopa maalata oman taustan.

Kuva: Scratch tutorial: sprite with background image
Just like with sprites, you can move or switch the background using scripts.

Äänet ja taus­ta­musiik­ki

Monissa luovissa pro­jek­teis­sa sopiva ääniraita on yhtä tärkeä kuin eri hahmot. Kun ohjelmoit Sc­ratc­hil­la, voit toteuttaa ja hallita kaikkia ääniä Äänet-valikosta. Graa­fis­ten ele­ment­tien tavoin voit valita valmiista Scratch-äänistä Valitse ääni-valikosta. Voit myös tuoda tai tallentaa ääniä, jos sinulla on mikrofoni.

Kuva: Menu for recording sounds with Scratch
Recording starts as soon as you click on the Record button.

Lisäämäsi äänet voidaan valita va­sem­mal­la puolella olevasta valikosta nap­saut­ta­mal­la vastaavaa pik­ku­ku­vaa. Sen jälkeen voit muokata ääniä eri tavoin. Voit esi­mer­kik­si leikata valittuja osia, säätää ää­nen­voi­mak­kuut­ta tai lisätä tai vähentää tois­to­no­peut­ta. Koska äänet in­tegroi­daan Scratch-pro­jek­tiin skriptien avulla, jo­kai­sel­le äänelle on annettava yk­si­löl­li­nen nimi, jonka voit määrittää Ääni-kentässä.

Kuva: Coding with Scratch: window for editing a sound sample
If you want to cut out specific sequences or only edit selected parts, select these parts by holding the left mouse button from the desired starting point and dragging the selection screen to the desired endpoint.

Skriptit ovat Scratch-koo­dauk­sen ydin

Jotta Scratch-oh­jel­moin­ti onnistuu, on tarpeen har­joi­tel­la Scratch-skriptien käyttöä. Näiden skriptien taustalla oleva koodi luodaan au­to­maat­ti­ses­ti, kun vedät lohkon pro­jek­tii­si – riip­pu­mat­ta siitä, onko kyseessä tapahtuma, funktio, ope­raat­to­ri tai muuttuja. Käyt­tä­jä­nä voit keskittyä täyt­tä­mään skriptit yk­sit­täi­sil­lä arvoilla ja mää­rit­tä­mään ne kuville ja äänille.

Kaikissa valmiiksi luoduissa sk­rip­teis­sä on kuvaukset, jotka kuvaavat tarkasti niiden toiminnot. Jos haluat ottaa skriptin käyttöön pro­jek­tis­sa­si, vedä lohko kes­kim­mäi­seen editori-ikkunaan. Lohkosta löydät kaikki mää­ri­tet­tä­vät arvot tai vaih­toeh­dot, jotka voit valita tai kir­joit­taa suoraan ruutuun. Jos sinulla on uusi skripti, joka viittaa oh­jel­maa­si jo si­säl­ty­vään skriptiin, liitä vastaava lohko kuin palapeliä koot­taes­sa.

Kuva: Learn Scratch: integrate scripts and test them
In the preview window, you can test sequences and review the current version of your Scratch project at any time.
Vinkki

Scratchin oppimisen haaste ei ole syn­tak­tis­ten sääntöjen tai muo­toi­lu­ra­ken­teen ulkoa opet­te­le­mi­nen, vaan pi­kem­min­kin yk­sit­täis­ten skriptien tar­koi­tuk­sen ym­mär­tä­mi­nen ja niiden tehokas hyö­dyn­tä­mi­nen ja yh­dis­te­le­mi­nen keskenään.

Kuinka luoda lyhyt ani­maa­tio­sar­ja Sc­ratc­his­sa

Nyt kun olemme käyneet läpi oh­jel­moin­tia­lus­tan tär­keim­mät osat, kat­so­taan­pa esi­merk­ki­hank­keen avulla, mitä Sc­ratc­hil­la voi tehdä.

En­sim­mäi­ses­sä vaiheessa etsimme taus­ta­ku­vaa siir­tä­mäl­lä hiiren näytön ala­reu­nas­sa olevan taus­ta­ku­vak­keen päälle ja nap­saut­ta­mal­la Valitse taus­ta­ku­va. Olemme valinneet Blue Sky -teeman, jota emme ole muo­kan­neet millään tavalla:

Kuva: Blue Sky backdrop
For our example, we chose the Blue Sky backdrop.

Seu­raa­vak­si lisäämme kuvan pro­jek­tie­si­merk­kiin. Koska Backdrops-välilehti on tällä hetkellä paikalla, jossa nor­maa­lis­ti on Costumes-välilehti, nap­sau­tam­me Choose a Sprite -pai­ni­ket­ta näytön oikeassa ala­kul­mas­sa. Scratch-valikossa on useita kuvia, joissa on useita asuja, joita voidaan käyttää lii­ke­sequent­tien si­mu­loi­mi­seen. Esi­mer­kik­si Cat-sprite on saatavana kahdessa versiossa: Cat ja Cat2. Kun kuvat tois­te­taan peräkkäin, näyttää siltä, että kissa kävelee.

Huomio

Spriten mu­kau­te­tut versiot hel­pot­ta­vat lii­ke­seu­ran­nan oh­jel­moin­tia Sc­ratc­hil­la.

Kuva: Scratch tutorial: Cat sprite
Different costumes and poses let you bring sprites to life.

Tämän lyhyen esimerkin vii­mei­ses­sä vaiheessa haluamme näyttää, kuinka voit ohjata kuviota ja koodia Sc­ratc­hil­la. Jos haluat esi­mer­kik­si saada kissan kä­ve­le­mään va­sem­mal­ta oikealle pitämällä oikeaa nuolta pai­net­tu­na, lisää seuraavat skriptit:

  • Ta­pah­tu­mat: kun [ ]-näppäintä painetaan
  • Ohjaus: odota [ ] sekuntia
  • Ulkonäkö: seuraava puku
  • Liike: liiku [ ] askelta

Määritä ta­pah­tu­masc­rip­tis­sä haluamasi näppäin – Scratch-op­paas­sam­me se on ”oikea nuoli”. Seu­raa­vak­si on Control-script, jossa asetat puskurin pukujen vaihtoa varten. Jos lisäät ”2”, sprite vaihtaa ul­ko­nä­köään kahden sekunnin kuluttua, mikä voi tehdä lii­ke­seu­ran­nas­ta luon­nol­li­sem­man. Looks-skripti varmistaa, että kuva vaihtuu ”cat” ja ”cat2” välillä niin kauan kuin nuo­li­näp­päin­tä pidetään pai­net­tu­na. Motion-osion neljännen skriptin avulla hahmo liikkuu myös oikealle, kun puku vaih­de­taan. Tässä esi­mer­kis­sä käytimme 10 vaihetta:

Kuva: Scratch: Script overview in project example
The values used in this Scratch tutorial are just one example. Slower or quicker costume changes as well as small or larger steps are also possible.
Vinkki

Voit testata tämän koo­dause­si­mer­kin tuloksen Scratch-pro­jek­ti­si­vul­la.

Kuinka julkaista Scratch-koo­dauspro­jek­ti

Kun olet luonut oman käyt­tä­jä­ti­lin ja vi­ral­li­ses­ti liittynyt Sc­ratc­he­rik­si, voit julkaista oh­jel­moin­tipro­jek­ti­si Scratch-alustalla. Voit tehdä tämän nap­saut­ta­mal­la Julkaise- pai­ni­ket­ta näytön yläreunan va­lik­ko­pal­kis­sa.

Avau­tu­vas­sa ikkunassa voit nyt muuttaa projektin nimeä ja lisätä ohjeita, kom­ment­te­ja tai kiitoksia. Jos siirrät Kom­men­toin­ti-kohdan vieressä olevan kytkimen va­sem­mal­le, voit myös poistaa projektin kom­men­toin­ti­toi­min­non käytöstä.

Kuva: Scratch: Publication of project example
In your project menu, click on Copy Link in order to share the link for your project with friends and acquain­tances.
Siirry pää­va­lik­koon