Oppimateriaalin copyright © 2011 Arto Wikla. Tämän oppimateriaalin käyttö on sallittu vain yksityishenkilöille opiskelutarkoituksissa. Materiaalin käyttö muihin tarkoituksiin, kuten kaupallisilla tai muilla kursseilla, on kielletty.

581362 Ohjelmointikielten periaatteet keväällä 2011: harjoitusohje

(Muutettu viimeksi 13.4.2011. Sivu perustettu 28.2.2011)

Huom: Muutokset vieläkin mahdollisia!

Harjoitukset ja harjoitustyö 21.3.-22.4.

Kurssin harjoitustyönä toteutetaan jonkin ohjelmointikielen "kevytspesifikaatio" verkkosivuna tai -sivustona. Sivua kehitellään viikoittain luennoilla käsitellyiltä näkökannoilta. Viikoittaisissa harjoitustilaisuuksissa ryhmien jäsenet esittelevät ja vertailevat valitun kielen piirteitä ja ominaisuuksia muihin kieliin. Valitun kielen verkkosivua/-sivustoa on pidettävä viikoittain ajan tasalla. Molempien ryhmien viikoittainen deadline on tiistaisin klo 10! Syy on se, että materiaalia käytetään luennoilla ja harjoituksissa.

Hyvissä ajoin ennen ensimmäistä harjoitusviikkoa kurssin opiskelijoista muodostetaan 1-4 hengen ryhmiä, jotka valitsevat oman nimikko-ohjelmointikielensä. Ryhmän koko ei vaikuta harjoitustyön vaativuuteen tai laajuuteen.

Kurssin vastuuhenkilölle (AW) toimitetaan linkki ryhmän tuottamaan viikoittain täydentyvään verkkomateriaaliin, jonka etusivu sijaitsee ryhmän jonkun jäsenen kotihakemistossa. Linkit liitetään kurssin sivulle "esiteltäviksi valitut kielet ja esittelijät".

Ryhmän lopullisesta verkkomateriaalista kukin ryhmäläinen voi saada enimmillään 18 kurssipistettä. Kaikki ryhmän opiskelijat saavat saman pistemäärän. Ryhmään lasketaan kuuluviksi ne kurssin alussa sovitut opiskelijat, jotka on merkitty tekijöiksi ryhmän tuottamaan lopulliseen materiaaliin.

Harjoituksista voi saada enimmillään 10 pistettä. Säännöt löytyvät kurssiesitteestä.

Ohjelmointikielen "kevytspesifikaatio"

Kurssin harjoitustyönä laaditaan valitusta ohjelmointikielestä viikoittain täydentyvä verkkosivu tai -sivusto, joka esittelee ja luonnehtii kieltä seuraavin periaattein:

Kevytspesifikaation jäsentelystä

Materiaalin jäsentelyä ohjaa luennolla käsiteltyjen sisältöjen järjestys. Koska ohjelmointikielet poikkeavat merkittävästi toisistaan, jäsentelyehdotus on vain suuntaa antava – sitä saa ja itse asiassa pitää muuttaa ja soveltaa luovasti, mikäli esiteltävät asiat sitä vaativat. Luentosisällön esitysjärjestys ei myöskään välttämättä istu kovin hyvin eräiden kielten vaatimaan asioiden esitysjärjestykseen. Järkeä saa siis käyttää. Kurssin opettajat mielellään osallistuvat järkevyyspohdintoihin.

Annetut otsikot ovat aiheiden luonnehdintoja – todellisten otsikoiden on syytä olla osuvampia. Lukuja saa tarvittaessa olla myös enemmän tai vähemmän.


    ********* 1. harjoitusviikko: *******
  1. Kielen taustaa ja miniesimerkki:
  2. Alkiorakenne – millaisista palikoista ohjelmat rakennetaan:
    ********* 2. harjoitusviikko: *******
  3. Tunnusten näkyvyysalueet – miten ja missä itse määritellyt rakenteet ovat käytettävissä:
    ********* 3. harjoitusviikko: *******
  4. Kontrollin ja/tai laskennan ohjaus – miten perustoiminnallisuudet ilmaistaan:
  5. Perustietotyypit – millaisilla arvoilla tai "datalla" pelataan:
    ********* 4. harjoitusviikko: *******
  6. Laskennan kapselointi – miten toiminnallisuuksia abstrahoidaan ja niistä rakennetaan uusia toiminnallisuuksia:
    ********* 5. harjoitusviikko: *******
  7. Datan kapselointi – millaisiksi rakenteiksi dataa voidaan koota:
    ********* 6. viikko, ei varsinaista harjoitusta *******
  8. Yhteenveto: kielen vahvuudet ja heikkoudet, suositellut ja varottavat käyttökohteet

Kurssin viimeisen luennon sijaan järjestään julkinen Grande Finale 28.4. 12-14 auditoriossa CK112.


Takaisin kurssin pääsivulle.