Hyppää pääsisältöön

Ohjelmointi

 

Kurssien sisällöt

Olet täällä

ViLLE Team tarjoaa kolmea eri ohjelmointikurssia vapaaseen käyttöön kaikille ViLLE-opettajille heti kurssien pilotointivaiheen päätyttyä. Kursseista yksi on suunniteltu yläkoulutasolle, ja kaksi muuta lukioihin.

Ohjelmoinnin perusteet yläkoulutasolle

Yläkoulutasolle suunnatulla ohjelmointikurssilla käydään läpi ohjelmoinnin perusteet Python-ohjelmointikieltä käyttäen. Kurssi on jaettu seitsemään moduuliin, joista jokainen koostuu kolmesta osiosta: oppitunnista, tutoriaalista ja harjoitustehtävistä. Jokainen oppitunti on suunniteltu n. 90 minuutin pituiseksi, mutta materiaali joustaa molempiin suuntiin. Jos ohjelmointia on lukujärjestyksessä yksi tuplatunti viikossa, kurssin läpikäyntiin menee oletuksena yksi lukukausi.

Kurssilla käydään läpi ohjelmoinnin perusteet alusta alkaen. Ohjelmointiin tutustuminen aloitetaan peräkkäisyyden käsitteestä, josta edetään muuttujiin ja syötteen ja tulostuksen käsittelyyn. Tämän jälkeisillä viikoilla käsitellään perusohjelmointikäsitteistä muun muassa valintalause, silmukat ja aliohjelmat. Lisäksi kurssilla käydään läpi muun muassa merkkijonojen ja taulukoiden käsittelyä sekä Pythonin valmiiden kirjastojen käyttöä omissa ohjelmissa. Kurssin läpikäyntiin riittää tarjottujen materiaalien lisäksi valmius käyttää ViLLEä (eli käytännössä mikä tahansa tietokone uudehkolla selaimella) ja Pythonin ilmaisen IDLE-ohjelmointiympäristön asennus.

Ohjelmoinnin perusteet lukiotasolle

Lukiotasolle suunnatulla perusohjelmointikurssilla käytetään myös Pythonia. Kurssi on suunniteltu järjestettäväksi yhden kahdeksan viikon pituisen jakson aikana. Rakenteessa oletetaan, että jokainen viikko koostuu kolmesta n. 75 minuutin pituisesta oppitunnista (joskin materiaali sopii hyvin käytettäväksi myös edellisestä poikkeavan kurssirakenteen kanssa). Joka viikko aloitetaan luennolla ja sitä tukevilla ViLLE-viikkotehtävillä. Toinen oppitunti käytetään pareittain tehtävän tutoriaalin parissa, ja viimeisellä oppitunnilla tehdään (myös pareittain) muutama hieman laajempi ohjelmointiharjoitustyö.

Kurssin oppimispäämäärät ovat jokseenkin vastaavat kuin yläkoulukurssillakin, mutta materiaali on toteutettu hieman vaativammaksi. Myös etenemistahti on lukiossa nopeampi kuin yläkoulun ohjelmointikurssilla. Kurssilla käydään läpi muun muassa muuttujat ja tyypit, valinta- ja toistolause ja aliohjelmien ja taulukoiden käyttö. Lisäksi kurssilla käydään läpi esimerkinomaisesti muutama vaativampi käsite, esimerkiksi tiedostojen lukeminen ja kirjoittaminen. Samoin kuin yläkoulukurssilla, myös lukiokurssilla läpikäyntiin riittää tarjottujen materiaalien lisäksi valmius käyttää ViLLEä (eli käytännössä mikä tahansa tietokone uudehkolla selaimella) ja Pythonin ilmaisen IDLE-ohjelmointiympäristön asennus.

Ohjelmoinnin jatkokurssi lukiotasolle

Ohjelmoinnin jatkokurssi on tarkoitettu läpikäytäväksi ohjelmoinnin peruskurssin jälkeen. Koska lukio- ja yläkoulutasoisten ohjelmointikurssien oppimispäämäärät ovat vastaavat, voi lukion ohjelmointikurssin suorittaa myös yläasteen perusohjelmointikurssin jälkeen. Kurssin rakenne on vastaava kuin lukion perusohjelmointikurssissakin: kurssi on suunniteltu järjestettäväksi yhden kahdeksan viikon pituisen jakson aikana, ja rakenteessa oletetaan, että jokainen viikko koostuu kolmesta n. 75 minuutin pituisesta oppitunnista.

Kurssilla käytetään ohjelmointikielenä Javaa. Tämän takia kurssin ensimmäiset viikot käytetään ohjelmoinnin perusosaamisen siirtämiseen Pythonilta Java-kielelle. Vaikka kielet eroavat monilta osin toisistaan, ovat monet perusrakenteet (esimerkiksi ehto- ja toistolauseet) hyvin samankaltaisia. Näin ollen Javan osalta painotetaan erityisesti niitä ominaisuuksia, joiden osalta kieli eroaa ratkaisevasti Pythonista, esimerkiksi vahvaa tyypitystä, luokan ja main-metodin määrittelyä ja lohkojen kirjoittamista.

Kun peruskäsitteet on opeteltu Javalla, siirrytään opettelemaan olio-ohjelmoinnin peruskäsitteitä. Opiskelu aloitetaan valmiiden luokkien käytöllä, jonka jälkeen opetellaan itse kirjoittamaan luokkia. Olio-ohjelmoinnin käsitteistöä laajennetaan tämän jälkeen esimerkiksi kapseloinnin ja luokkametodien ja -muuttujien käsitteillä. Kurssin lopuksi käsitellään myös perintä Javassa, mutta kaikkein monimutkaisimmat käsitteet (esimerkiksi polymorfismi tai rajapintaluokat) jätetään kurssilla käsittelemättä. Kurssin päätyttyä opiskelijoiden pitäisi siis pystyä mallintamaan tietorakenteita yksinkertaisten omien luokkien kautta ja hyödyntämään olio-ohjelmoinnin perustekniikoita omien ohjelmien kirjoittamisessa. ViLLE-tehtävien ja muiden valmiiden materiaalien lisäksi kurssilla tarvitaan ainoastaan jokin ilmainen Java-ohjelmointiympäristö – materiaaleissa suositellaan käytettäväksi Dr. Javaa, joka toimii ilman erillistä asennusta.