1jZ7iKR
1jZ7iKR
1jZ7iKR
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Koodi2016 | Miten ohjelmointia opetetaan?<br />
Koodi2016 | Miten ohjelmointia opetetaan?<br />
3.–6. luokka:<br />
Visuaalinen<br />
ohjelmointiympäristö<br />
Verkosta löytyy useita lapsille suunnattuja visuaalisia<br />
ohjelmointiympäristöjä sekä miniohjelmointikieliä.<br />
(”Miniohjelmointikieli” viittaa englannin<br />
termiin educational programming language, jonka<br />
voisi kääntää myös ”opetuskäyttöön luoduksi<br />
ohjelmointikieleksi”, mutta tässä käytetään lyhyempää<br />
muotoa ”miniohjelmointikieli”.)<br />
Visuaalisia ohjelmointiympäristöjä ovat esimerkiksi<br />
Logo ja Scratch, jotka opettavat koodaamisen<br />
perusteita omassa näkymässään. Visuaalisia ohjelmointiympäristöjä<br />
käyttämällä ei voi koodata<br />
vaikkapa iPhonelle, mutta ne opettavat ajatusrakenteita<br />
ja taitoja, joita voi hyödyntää myöhemmin<br />
niin sanotusti oikeasti ohjelmoidessa.<br />
Esimerkiksi Scratchin avulla tehdyt pelit ja<br />
muut tuotokset voi myös jakaa internetissä vaikkapa<br />
kavereiden ja sukulaisten saataville.<br />
Visuaalisessa ympäristössä on varsinaista<br />
ohjelmointiympäristöä helpompi välttää virheitä,<br />
jotka vievät aloittelijan motivaation: Kun<br />
ohjelmoinnissa pilkku menee väärään paikkaan<br />
tai jostain puuttuu kirjain, sitä kutsutaan kirjoitusvirheen<br />
sijaan syntaksivirheeksi. Ne saattavat<br />
turhauttaa vasta-alkajaa, sillä yksikin virhe saattaa<br />
estää koko ohjelman toiminnan. Visuaalisissa<br />
ympäristöissä komentoja annetaan esimerkiksi<br />
raahaamalla ruudulla erilaisia palikoita. Sitä kautta<br />
päästään tekemisiin suurten linjojen kanssa,<br />
eikä pieniä tarkkuusvirheitä pääse syntymään.<br />
Miniohjelmointikielet puolestaan näyttävät oikealta<br />
ohjelmoinnilta, mutta ne ovat oikeita kieliä<br />
helpompia ja nopeampia oppia. Monissa oikeissa<br />
ohjelmointikielissä on valtava määrä ominaisuuksia,<br />
joita tarvitaan ammattilaisten työympäristöissä<br />
monimutkaisia ohjelmistoja kehitettäessä.<br />
Tällöin yksinkertaisenkin asian tekeminen voi<br />
vaatia paljon koodia ja kokonaisen ohjelmointiympäristön<br />
hallintaa.<br />
Miniohjelmointikielissä keskitytään yksinkertaisiin<br />
alkeisiin. Ne opettavat ohjelmoinnin<br />
perusteita nopeasti ja näkyvin tuloksin. Monet<br />
miniohjelmointikieliin perustuvat ajatukset liittyvät<br />
tutkija Seymour Papertin työhön, ja lähes<br />
kaikista suosituista ohjelmointikielistä löytyy<br />
yksinkertaistettu aloittelijaversio. Pitkä lista<br />
näistä ohjelmointikielistä löytyy Wikipediasta:<br />
en.wikipedia.org/wiki/Educational_programming_language<br />
Scratch<br />
Scratch on tätä kirjoittaessa tunnetuin visuaalinen<br />
ohjelmointiympäristö, joka on – mahtavaa! –<br />
saatavilla keskeisiltä osin myös suomeksi.<br />
Arvostetussa yhdysvaltalaisessa teknisessä yliopistossa<br />
MIT:ssä kehitetty Scratch on ilmainen<br />
ohjelmointiympäristö, joka opettaa ongelmanratkaisutaitoja<br />
ja alkeellista ohjelmointia. Scratchista<br />
on myös tätä kirjoitettassa tulossa alle kouluikäisille<br />
suunnattu tablettiversio, ScratchJR.<br />
Scratchin ajatus on, että oppilas ei kirjoita koodia.<br />
Sen sijaan asiat tehdään pääosin hiirellä raahaamalla:<br />
esimerkiksi ruudulle luodaan hahmoja<br />
ja liitetään niihin toiminnallisuuksia. Toiminnallisuuskia<br />
eli palikkamaisia työkaluja käyttämällä ja<br />
yhdistelemällä oppilas voi muodostaa esimerkiksi<br />
pelejä ja tarinoita. Samalla hän oppii ohjelmoinnillista<br />
ajattelua kuten ongelmien pilkkomista,<br />
algoritmeja ja toistettavuuden perusteita.<br />
Scratchia käyttävät opettajat ympäri maailmaa,<br />
ja sen ympärille on syntynyt paljon<br />
harjoituksia. Scratchin yli neljän miljoonan (!)<br />
esimerkin joukosta löytyvät ohjelmointiohjeet<br />
esimerkiksi oman sähköisen pianon, joulukortin<br />
tai seikkailupelin luomiseen.<br />
Opettajan on syytä tutustua Scratch-ympäristöön<br />
ainakin parin tunnin ajan etukäteen ja valita<br />
alkuun yhteinen harjoitus. Harjoituksia voi valita<br />
joko Scratchin omasta ympäristöstä tai lukea muiden<br />
opettajien suosituksia esimerkiksi suomalaisen<br />
Scratch Klubin sivuilta (sites.google.com/<br />
site/scratchklubi) tai kansainväliseltä Scratchedsivulta<br />
(scratched.media.mit.edu).<br />
Oppilaita kannattaa myös kannustaa jakamaan<br />
ja selittämään omia ohjelmiaan.<br />
Scratchin peruskonseptin ymmärtää parhaiten<br />
esimerkin avulla:<br />
90| |91