Harjoitustyö on pakollinen ja suoritetaan vaiheittain.
Harjoitustyön suunnitelma on palautettava viikolla 7 (voidaan sisällyttää osaksi 1. demoja).
Keksitään itse, vaikeustaso: kerhon jäsenrekisteri (kerhon jäsenrekisteri ei kuitenkaan kelpaa aiheeksi, koska se tehdään kurssin malliohjelmana). Vinkkejä (soveltaen) työkirjassa: Harjoitustyöohje.
Harjoitustöiden käyttöliittymä toteutetaan pääsääntöisesti teksti/menupohjaisena. Jos tekijöillä on kiinnostusta/osaamista graafisen käyttöliittymän tekemiseen (esim. kurssi käytynä edellisenä kesänä), aiheesta voidaan neuvotella. Tämä vaatii kuitenkin tavanomaista harjoitustyötä itsenäisempää työskentelyä.
Mielellään pareittain. 1-3 henkilön ryhmät ovat mahdollisia.
Harjoitustyö säilytetään WWW:ssä (Ei Optimassa). Harjoitustyön URL-hakemistojuuri merkitään Korppi-järjestelmään. (esim. http://www.cc.jyu.fi/~minurmin/ohj/). Ohjelman dokumentteineen ja lähdekoodeineen tulee olla hakemistossa JAR-pakettina sekä hakemistorakenteena, jossa tiedostoja voidaan tarkastella suoraan. Lisäksi ohjelmasta tulee olla generoituna Javadoc-dokumentaatio. files.txt-tiedostoa ei tarvita. Lisätietoja paketeista ja dokumentaatiosta 4. pääteohjauksessa.
Mahdollinen hakemistorakenne voisi olla esim. seuraavan tyyppinen:
/ | |-harkka.jar - kaikki pakattuna |-suunnitelma.txt - vaihe 1 |-crc.html - vaihe 2 | |--src/ | | | |-java-lähdekoodit pakettien mukaisissa alihakemistoissa | |--classes/ | | | |-ajettavat java-luokat (ei pakollinen) | |--doc/ | |-javadoc-dokumentaatio
Harjoitustyöstä voi saada hyvityspisteitä (max. 3) tenttiin. Toisaalta myöhästymiset aiheuttavat kokonaisarvosanaan miinuksia (max -6, määritellään myöhästyneiden päivien ja aiheen vaativuuden mukaan)! Huom. Työkirjan jaottelun vaiheet 1 ja 2 on yhdistetty vaiheeksi 1.
Vaihe:Aihe Valmis viimeistään ------------------------------------------------------------------- 1&2 Suunnitelma la 19.2.2005 ------------------------------------------------------------------- 3 "Toimiva" kommentoitu pääohjelma ja menut (joista tulee: "ei toimi"). la 19.3.2005 ------------------------------------------------------------------- 4 Tietorakenteet ja luokat suunniteltu ja hyväksytty (crc+uml) la 2.4.2005 ------------------------------------------------------------------- 5 Tietorakenteet koodattu ja testattu. Ohjelma ilman muuta oikeaoppisesti jaettuna osiin. Mielellään myös kommentoitu ohjelman runko, jossa toimivat tietorakenteet ja toiminnot mukana. toimintojen alakohtien ei vielä tarvitse toimia. la 23.4.2005 ------------------------------------------------------------------- 6 Ainakin toimiva tiedoston luku ja tiedostoon talletus. Viimeistään nyt tietorakenteet toimivat ohjelman rungon kanssa. la 14.5.2005 ------------------------------------------------------------------- 7 Toimiva ja dokumentoitu ohjelma. Menupohjaisista ohjelmista voi puuttua la 28.5.2005 ohjaajan kanssa sovittuja toimintoja. (näyttö sähköpostilla) -------------------------------------------------------------------
Harjoitustyön ohjaukset pääteohjausten jälkeisellä ohjaustunnilla tai tarvittaessa sovitaan erikseen. Kukin vaihe näytetään ohjaajalle henkilökohtaisesti aikataulun mukaan (erikseen sovittaessa myös palautus sähköpostilla on mahdollista).
Harjoitustyön vaihe on hyväksytty, kun vaihe on näytetty henkilökohtaisesti ohjaajalle ja ohjaaja on merkinnyt hyväksynnän Korppiin.
On aivan ilmeistä, että tämän kurssin harjoitustyössä tulee erinäisiä ongelmia, joita ratkoessaan vain hakkaa päätään seinään ja meinaa vielä viivästyä aikataulusta. Kohtuullisen ongelma ratkaisuyrityksen jälkeen voi ilman muuta kääntyä aina ohjaajan puoleen, on sitä itsekin oltu vaikeuksissa (ja tullaan olemaan).
Aluksi kysyn joka tapauksessa, että onko tilannetta tutkittu debuggerilla, joten tämä kannattaa tehdä jo etukäteen. Samoin ongelma kannattaa yrittää paimentaa hyvin pienelle alalle. Näin voimme vähän nopeuttaa ongelman käsittelyä.