5.12.2006


Sopimuspohjainen olio-ohjelmointi
Kevät 2007, 5 op (3 ov), TKO_2039


Tiedotuksia



Aikataulu

Aika Aihe Kirja Huom.
1. 5.3. ma
klo 12–14
Alustus, Javasta, rutiinin määrittely §1
2. 7.3. ke
klo 14–16
Sopimuspohjaisuus, määrittelyn kirjoittaminen, alkuehto ja loppuehto §2
3. 8.3. to
klo 10–12
Erikoistilanteet, Javan poikkeukset §2
4. 12.3. ma
klo 12–14
Luokan muodostaminen, esimerkki §3
5. 14.3. ke
klo 14–16
Sisäisen esitysmuodon eheys, suojausmääreet, luokkainvariantti, esimerkki §3
6. 15.3. to
klo 10–12
Luokkakokonaisuuden muodostaminen, esimerkki §4
7. 19.3. ma
klo 12–14
Esimerkki, testauksesta. §4
8. 21.3. ke
klo 14–16
Periytymisen käyttö, korvaus ja ylikuormitus. §5.1-5.4
9. 22.3. to
klo 10–12
Perusoperaatiot §6.1-6.3 Demot alkavat maanantaina.
10. 28.3. ke
klo 14–16
Geneerisyyden käyttö, kokoelmat. §7.1, §8.2
11. 29.3. to
klo 10–12
Kokoelmat §8.2
12. 4.4. ke
klo 14–16
Esimerkkejä, lopetus Demot jatkuvat pääsiäisen jälkeen 16.4 ja 23.4.


Tentit

Varmista ajankohdat ja paikat tenttilistasta ja ilmoittaudu ajoissa tentti-ilmon kautta.



Kuvaus

Tavoitteet: Kurssilla perehdytään olio-ohjelmointiin hyödyntämällä sopimuspohjaisen ohjelmoinnin periaatteita.

Sisältö: Sopimuspohjaisen ohjelmoinnin tarkastelu aloitetaan yksittäisten rutiinien määrittelystä (esim. alku- ja loppuehdot) ja toiminnasta (esim. erikoistilanteiden käsittely), josta edetään luokkatason käsitteisiin (esim. luokkainvariantti ja abstraktiofunktio) ja lopulta luokkakokonaisuuksien suunnitteluun ja määrittelyyn. Kurssin aikana tutustutaan myös tarkemmin Java-kielen oliomekanismien toimintaan sekä sen luokkahierarkiaan (esim. kokoelmaluokat), joita syvennetään Olio-ohjelmoinnin jatkokurssilla.

Laajuus: 5 op (3 ov)

Esitiedot: Olio-ohjelmoinnin perusteet.

Kirjallisuus: Smed, Hakonen ja Raita: Sopimuspohjainen olio-ohjelmointi Java-kielellä, 2007.

Toteutustavat: Luennot (24 h), demonstraatiot (8 h)

Suoritustavat: Tentti

Luennoitsija: Jouni Smed

Demonstraattorit: Sanna Tuohimaa, Tuukka Kataja, Heidi Vähämaa ja Johannes Tuikkala.

Aika: Luennot 5.3–4.4 maanantaisin 12–14 (5.3, 12.3 ja 19.3), keskiviikkoisin 14–16 ja torstaisin klo 10–12 ICT-talon salissa Alfa (B1047). Demonstraatiot maanantaisin 26.3–23.4.


© 2006–2007 J. Smed