582334 TDD-ohjelmointimenetelmä ja koodin suunnittelu (5 op), syksy 2009
582334 TDD programming technique and designing code (5 cr), autumn 2009

Kurssiesittely Luennot Harjoitukset

Pidätkö ohjelmoinnista ja haluat kirjoittaa eleganttia koodia?
Onko alkuinnostus hiipunut ja kaipaat vaihtelua ohjelmointiin?
Suunnitteletko mielummin luokkarakenteita kuin metsästät bugeja debuggerilla?
Onko muilta perittyjen ohjelmien muuttaminen vaikeaa?
Tule TDD-kurssille ja mullista tapasi ohjelmoida!

Ajankohtaista

Lyhyesti

Kurssikuvaus: Kurssilla opetellaan kirjoittamaan ohjelmia Test-Driven Development -suunnittelumenetelmää käyttäen. Keskeisessä asemassa on oppia kirjoittamaan koodista hyvää ja ylläpidettävää, niin että sitä on helppo lukea ja muokata. Käytännön harjoittelu on tärkeässä osassa ja oppilaat ohjelmoivat kurssin aikana pari harjoitustyötä. TDD:n lisäksi käsitellään myös muita ketteriä toteutustason menetelmiä.

Esitiedot: Esitietoina vaaditaan opintojaksojen Ohjelmoinnin harjoitustyö ja Tietorakenteiden harjoitustyö suoritus. Osallistujilla tulee olla hyvät ohjelmointitaidot ja olio-ohjelmoinnin käsitteet hallussa. Kurssilla käytettävä ohjelmointikieli on Java.

Oppimistavoitteet: PDF

Kurssin asema tutkinnossa: Aineopintojen valinnainen kurssi.

Luennoija: Esko Luontola

Luentoajat: 08.09.-15.10. TI, TO 16-18 CK112

HUOM! Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla.

Harjoitusryhmät: 07.09.- 16.10.

  1. Esko Luontola, 07.09.-16.10. KE 12-14 B221
  2. Esko Luontola, 07.09.-16.10. KE 14-16 B221 (also in English)
  3. Matti Paksula, 07.09.-16.10. TO 14-16 B221

Kurssikoe: ti 20.10. klo 9-12 salissa A111
Uusintakoe: pe 20.11. klo 16-20 salissa A111

Erilliskokeet / Separate Exams: see the separate exams page for more details.

Kurssimateriaali: Kurssimateriaali koostuu kurssikirjasta, luentokalvoista sekä luentokalvoissa viitatuista netissä vapaasti luettavista artikkeleista ja videoesityksistä. Kurssikirjana on Clean Code: A Handbook of Agile Software Craftsmanship (tässä yksi arvostelu kirjasta). Kirjasta on Kumpulan tiedekirjastossa laina- ja lukukappaleita (hyllytettynä sanan "clean" kohdalle). Luentokalvot ja tarkka lista materiaaleista ilmestyy Luennot-sivulle kurssin edetessä. Näillä näkymin luentokalvot ovat englanniksi ja luennot puhutaan suomeksi.

Kurssin puolivirallinen IRC-kanava on #tdd-2009 (IRCNet). Et menetä mitää tärkeää vaikka et ole kanavalla.

Suorittaminen: Kurssi suoritetaan yhdellä kahdesta vaihtoehtoisesta tavasta:

  1. Osallistumalla laskuharjoituksiin ja kurssikokeeseen. Harjoitustehtävien tekemisestä ja aktiivisesta osallistumisesta laskuharjoituksiin voi saada 40 pistettä. Kokeesta voi saada 20 pistettä.
  2. Osallistumalla laskuharjoituksiin ja ensimmäiseen erilliskokeeseen (uusintakokeeseen) kurssin jälkeen. Kurssin aikana osoitetusta laskuharjoitusaktiivisuudesta voi saada 40 pistettä. Kokeesta voi saada 20 pistettä. Erilliskokeeseen on ilmoittaudutava erikseen tavanomaisella ilmoittautumismenettelyllä.
  3. Osallistumalla erilliskokeeseen.

HUOM! Harjoituksista voi siis saada enemmän pisteitä kuin kokeesta. Tämän kurssin harjoitustehtävät ovat poikkeuksellisen työläitä, joten niiden tekemiseen kannattaa varata paljon aikaa. Juuri siksi tästä kurssista saakin 5 op eikä tavalliset 4 op.

Arvosanaan 1 riittää yhteensä 30 pistettä ja arvosanaan 5 riittää yhteensä 50 pistettä.

Kurssin työvälineet:

Ohjelmointikieli
Java 5
Projektin hallinta
Maven
Yksikkötestikirjasto
JUnit
Mock object -kirjasto
Mockito tai EasyMock
IDEn käyttö suositeltavaa
IntelliJ IDEA tai NetBeans tai Eclipse
Versionhallinnan käyttö suositeltavaa
Git tai Subversion

Ohjeita ympäristön asennukseen


Viimeksi muokattu 01.12.2010 21:04 Copyright © 2009 Esko Luontola