ops2016 ja ohjelmointi
TRANSCRIPT
OPS2016 &. OHJELMOINTI.
Iida-Maria Peltomaa ja Aki Luostarinen
Kuva: Marianne HeikkinenOtavan Opisto
SEURAA MEITÄ:@opshautomot @akiluos @IidaPeltomaa
12.00-13.30 Alustus: ohjelmointi - mitä ja miksi?
Katsaus ohjelmointiympäristöihin: Scratch, Scratch Junior, Code.org, Kodu, Codecademy, Racket, Tynker
13.30-14.00 KAHVITAUKO
14.00-15.30 Pistetyöskentelyllä itse kokeilemaan!1) Liikunnallisia ja leikillisiä harjoituksia (ilman laitteita) 2) Scratch3) Scratch Junior (vain tabletilla)
15.30-16.00 Yhteinen koonti
ILTAPÄIVÄN AIKATAULU
OPSissa kuvatun ohjelmoinnin päätavoite on algoritmisen ajattelun kehittyminen eli miten ihminen pystyy ajattelemaan niin, että tietokone ymmärtää.
TERMIT SELVIKSIalgoritminen ajattelu = ohjelmoinnillinen ajattelu = computational thinkingohjelmointi = koodaaminen
MISTÄ OHJELMOINNISSA ON KYSYMYS?
Mahdollisimman tarkka toimenpidesarja, jossa askel askeleelta esitetään yksikäsitteisessä muodossa toimenpiteet, joita asetetun ongelman ratkaisemiseen tarvitaan.
TERMIT SELVIKSIyksikäsitteinen = tarjoaa joka tilanteessa vain yhden tavan toimia
MIKÄ ON ALGORITMI?
ALGORITMI
Asetettu ongelma: pannukahvin nauttiminen
Algoritmi:1. Täytä pannu vedellä.2. Keitä vesi.3. Lisää kahvinpurut.4. Anna hautua.5. Kaada juomaa kuppiin.6. JOS käytät maitoa NIIN lisää maito7. JOS käytät sokeria NIIN lisää sokeri8. Juo kupista
PERÄKKÄISYYSMUUTTUJAEHDOLLISUUS (if – then – else)LOOGISET OPERAATIOT (ei, ja, tai)SILMUKKAFUNKTIO
OHJELMOINNIN PERUSRAKENTEITA
Ohjelmoinnin perusrakenteet noudattavat samaa logiikkaa ohjelmointikielestä riippumatta.
OHJELMOINNIN PERUSRAKENTEITA
.
ENSIMMÄINEN OHJELMOINTIHARJOITUSSeuraa ohjeita ylhäältä alaspäin PERÄKKÄISYYS
JOS/KUN ohjaaja taputtaa kätensä yhteen NIIN EHDOLLISUUSosoita kädellä oikealle MUUTTUJAosoita jalalla vasemmalle MUUTTUJAhyppää MUUTTUJAnosta kädet ilmaan MUUTTUJA toista kaikki edelliset x 2 SILMUKKA
.
TOINEN OHJELMOINTIHARJOITUSSeuraa ohjeita ylhäältä alaspäin PERÄKKÄISYYS
JOS/KUN ohjaaja taputtaa kätensä yhteen EHDOLLISUUSJA sanoo hep, LOOGINEN OPERAATIONIIN osoita kädellä oikealle x 3 MUUTTUJA + SILMUKKAosoita jalalla vasemmalle x 3 MUUTTUJA + SILMUKKAhyppää MUUTTUJAnosta kädet ilmaan MUUTTUJA toista kaikki edelliset x 2 SILMUKKA
FUNKTIOPannukahvin algoritmi:1. Täytä pannu vedellä.2. Keitä vesi.3. Lisää kahvinpurut.4. Anna hautua.5. Kaada juomaa kuppiin.6. JOS käytät maitoa NIIN lisää maito7. JOS käytät sokeria NIIN lisää sokeri8. Juo kupista
Mikä osa algoritmistä pätee myös teen ja kaakaon tarjoiluun? Tehdään tästä algoritmin pätkästä funktio.
FUNKTIO 1 “valmistelu”
FUNKTIO 2 “juominen”
Asetettu ongelma: pannukahvin tarjoilu
Algoritmi:FUNKTIO 1 “valmistelu”1. Täytä pannu vedellä.2. Keitä vesi.
3. Lisää kahvinpurut.4. Anna hautua.
FUNKTIO 2 “juominen”5. Kaada juomaa kuppiin.6. JOS käytät maitoa NIIN lisää maito7. JOS käytät sokeria NIIN lisää sokeri8. Juo kupista
Asetettu ongelma: teen tarjoilu
Algoritmi:1. FUNKTIO 1
2. Lisää teenlehdet.3. Anna hautua.
4. FUNKTIO 2
Asetettu ongelma: kaakaon tarjoilu
Algoritmi:1. FUNKTIO 1
2. Lisää kaakaojauhe.3. Sekoita
4. FUNKTIO 2
EHDOLLISUUSJos aurinko paistaa, kahvittele ulkona.
IF, THEN
Monimutkaisempi ehtolause voisi sisältää myös
ohjeen, mitä tehdään, jos ehto ei pädekään:
Jos aurinko paistaa, kahvittele ulkona,
muuten pysy sisällä.
IF, THEN, ELSE
SILMUKKA
Toista vaiheita 5-8 tai FUNKTIO 2:sta, niin kauan
kuin pannussa on kahvia, teetä tai kaakaota.
KUVA: Ryan McGuire CC1 1.0 http://gratisography.com/-
Kuinka ongelma puretaan osiin?Kuinka tunnistetaan kaavoja? Kuinka luodaan algoritmejä? Kuinka yleistetään ratkaisuja?
Tieto- ja viestintäteknologinen osaaminen (L5)Oppilaat saavat ja jakavat keskenään kokemuksia digitaalisen median parissa työskentelystä sekä ikäkaudelle sopivasta ohjelmoinnista. (POPS2014, 101)
Matematiikan tavoitteisiin liittyvät keskeiset sisältöalueet vuosiluokilla 1-2Tutustuminen ohjelmoinnin alkeisiin alkaa laatimalla vaiheittaisia toimintaohjeita, joita myös testataan. (POPS2014, 129)
OPS JA OHJELMOINTI 1-2
Tieto- ja viestintäteknologinen osaaminen (L5)Ohjelmointia kokeillessaan oppilaat saavat kokemuksia siitä, miten teknologian toiminta riippuu ihmisen tekemistä ratkaisuista. (POPS2014, 157)
Käsityön tavoitteisiin liittyvät keskeiset sisältöalueet vuosiluokilla 3–6Harjoitellaan ohjelmoimalla aikaan saatuja toimintoja, joista esimerkkinä robotiikka ja automaatio. (POPS2014, 271)
OPS JA OHJELMOINTI 3-6
Matematiikan opetuksen tavoitteet vuosiluokilla 3–6T14 innostaa oppilasta laatimaan toimintaohjeita tietokoneohjelmina graafisessa ohjelmointiympäristössä.(POPS2014, 235)
Matematiikan tavoitteisiin liittyvät keskeiset sisältöalueet vuosiluokilla 3–6Suunnitellaan ja toteutetaan ohjelmia graafisessa ohjelmointiympäristössä (POPS2014, 235).
Matematiikan arviointikriteerit 6. vuosiluokan päätteeksi arviota “hyvä” / arvosanaa kahdeksan varten
● Ohjelmointi graafisessa ohjelmointiympäristössä: Oppilas osaa ohjelmoida toimivan ohjelman graafisessa ohjelmointiympäristössä(POPS2014, 239)
OPS JA OHJELMOINTI 3-6
Tieto- ja viestintäteknologinen osaaminen (L5)Ohjelmointia harjoitellaan osana eri oppiaineiden opintoja. (POPS2014, 284)
Käsityön tavoitteisiin liittyvät keskeiset sisältöalueet vuosiluokilla 7–9Käytetään sulautettuja järjestelmiä käsityöhön eli sovelletaan ohjelmointia suunnitelmiin ja valmistettaviin tuotteisiin. (POPS2014, 431)
OPS JA OHJELMOINTI 7-9
Matematiikan opetuksen tavoitteet vuosiluokilla 7–9T20 ohjata oppilasta kehittämään algoritmista ajatteluaan sekä taitojaan soveltaa matematiikkaa ja ohjelmointia ongelmien ratkaisemiseen. (POPS2014, 375)
Matematiikan tavoitteisiin liittyvät keskeiset sisältöalueet vuosiluokilla 7–9Ohjelmoidaan ja samalla harjoitellaan hyviä ohjelmointikäytäntöjä. (POPS2014, 375)
Matematiikan päättöarvioinnin kriteerit hyvälle osaamiselle (arvosanalle 8) oppimäärän päättyessäOppilas osaa soveltaa algoritmisen ajattelun periaatteita ja osaa ohjelmoida yksinkertaisia ohjelmia. (POPS2014, 379)
OPS JA OHJELMOINTI 7-9
Hyödynnä ohjelmointia työvälineenä eri oppiaineissa:
> havainnollistaminen> kokeilu> visualisointi> esittäminen jne.
OHJELMOINTI TYÖVÄLINEENÄ
www.koodi2016.fi
Perusasioiden ymmärtäminen ohjelmoinnista on verrattavissa siihen, että ymmärtää perusasiat biologiasta, maantiedosta, äidinkielestä tai kuvaamataidosta: elämässä tulee nykyään ohjelmistoja vastaan vähintään yhtä usein kuin tulee tarve erottaa rauduskoivu hieskoivusta tai pakottava mielihalu maalata akryyliväreillä.
Peruskoululainen opettelee biologiaa vaikkei aikoisi biologiksi ja maantietoa vaikkei aikoisi geologiksi. Myös ohjelmoinnin ymmärtäminen on yleissivistystä, eikä koodaamisen opettelu edellytä urasuunnitelmia ohjelmoijana.
www.koodi2016.fi
Teknologia muuttuu nopeasti, ja ohjelmointikielet kehittyvät koko ajan.
Silti ohjelmoinnin opettamisen perusta on ajattelussa, joka ei lähitulevaisuudessa ole muuttumassa miksikään. Ihmisen pitää jatkossakin ymmärtää ongelma, osata jäsentää se tietokoneen hahmottamiin osiin ja kyetä kertomaan tietokoneelle, mitä sen pitää tehdä.
Perustavanlaatuinen ymmärrys tietokonepohjaisesta ongelmanratkaisusta ja uuden luomisesta on yleissivistystä. Passiivisen ohjelmistojen käytön opettaminen on nopeammin vanhentuvaa tietoa.
www.koodi2016.fi
Opettaja kykenee varmuudella oppimaan asiat, jotka on tarkoitettu peruskouluikäisten opittavaksi!.
.
Koodiaapinen auttaa peruskoulun opettajia tutustumaan koodaukseen osana koulutyötä.
Seuraava maksuton verkkokurssi alkaa 22.2.2016.
www.koodiaapinen.fi
KOODIAAPISEN MATKAAN:
Linda Saukko-Rauta, CC BY NC NDhttps://saukkorauta.wordpress.com/2015/09/13/konsulentt-konsultti-karmesaho-maarittelee-digiloikan/
Scratch
Scratch Junior
Code.org
Kodu
codecademy
Racket
Tynker
Bomberbot
KATSAUS OHJELMOINTISOVELLUKSIIN
.
KUVA: Ryan McGuire CC1 1.0 http://gratisography.com/-
TESTAILEMAAN KÄYTÄNNÖSSÄ
1) LIIKUNNALLISIA JA LEIKILLISIÄ HARJOITUKSIA
2) SCRATCH
3) SCRATCH JUNIOR (vain tabletilla)
ANNA PALAUTETTA, KYSY, KOMMENTOI
Aki Luostarinen Iida-Maria [email protected] 311 7255akiluos
[email protected] 360 3773IidaPeltomaaIida-Maria PeltomaaAki Luostarinen