Helsingin yliopisto /Tietojenkäsittelytieteen laitos
581326-3 Java-ohjelmointi

582309 Ohjelmointitekniikka (Java), 3 ov: kurssiesite keväällä 2005

(Arto Wikla, 25.1.2005)

Kurssi on tietojenkäsittelytieteen cum laude approbatur -oppimäärän valinnainen kurssi. Kurssilla perehdytään Java-ohjelmointitekniikan muutamiin osa-alueisiin, mm. Java 1.5:n uusiin piirteisiin, poikkeusten käyttöön, graafisten käyttöliittymien toteutustekniikkaan ja tapahtumaohjattuun ohjelmointiin, ohjelma-arkkitehtuureihin ja kokoelmiin sekä rinnakkaiseen olio-ohjelmointiin. Kurssilla on aihepiireihin johdattelevia luentoja, jotka eivät edes pyri olemaan kattavia. Opiskelijat opiskelevat kurssin sisällön itsenäisesti. Luennoilla ja kurssimateriaalissa suositellaan tiedon lähteitä.

Opiskelijoista muodostetaan noin viiden hengen kokoisia opintopiirejä, joilla on ohjattua harjoittelua kaksi kahden tunnin jaksoa viikoittain. Opintopiirit ratkovat tehtäviä ja tuottavat oppimateriaalia www-sivuina. Harjoitusaktiivisuudesta ja erityisesti tuotetusta oppimateriaalista saa merkittävän osan kurssin arvosanaan vaikuttavista pisteistä. Pisteiden määräytymisen täsmälliset perusteet löytyvät kurssin sivulta http://www.cs.helsinki.fi/u/wikla/OTJ/K05/Tavat.html.

Huom: Kurssia ei ole mahdollista suorittaa osallistumatta aktiivisesti opintopiiritoimintaan! Opintopiireihin osallistuminen ja siitä saadut pisteet ovat välttämättömiä myös kurssin jälkeisiin uusintakokeisiin osallistumiselle.

Kurssi edellyttää hyvää Java-ohjelmointitaitoa sekä valmiutta ryhmätyöskentelyyn ja omatoimisuuteen. Kurssin materiaali koostuu verkkosivuille kootusta aineistosta ja ohjeistosta. Kaikkea mahdollista muutakin materiaalia saa toki käyttää!

Kurssin kotisivu on osoitteessa http://www.cs.helsinki.fi/u/wikla/OTJ/K05/ . Kurssin keskusteluryhmä on hy.opiskelu.tktl.ohjelmointitekniikka. Kurssin WWW-sivuja ja keskusteluryhmää on hyvä seurata.

Luennot ovat 18.1.-11.3. tiistaisin ja perjantaisin kello 12-14 salissa CK112. Luennoilla (oikeastaan "luennoilla"!) ei pyritä siis lainkaan kattamaan koko opittavaa asiasisältöä. Tarkoitus on vain tutustua kurssin teemoihin yleisellä tasolla ja tutkailla, millaiseen materiaaliin on syytä tutustua. Luennoilla voidaan myös pohdiskella viikon aikana opintopiirityöskentelyn seurauksena esiin tulleita ongelmia. Noita ongelmia voidaan luentotilanteessakin yrittää yhdessä ratkoa. Kurssin aikataulua, sisältöä ja lukuvinkkejä löytyy sivulta http://www.cs.helsinki.fi/u/wikla/OTJ/K05/Sisalto/

Kurssin tärkein työskentelyväline on opintopiiri, noin viiden hengen kiinteä opiskelijaryhmä, joka yhdessä työskennellen ratkoo kurssilla annettuja tehtäviä ja ongelmia. Opintopiiri hakee itse tietoa internetistä, kirjoista... Opintopiirien tyoskentelytavoista, säännöistä ja määräyksistä, suosituksista ym. on oma ohjesivunsa: http://www.cs.helsinki.fi/u/wikla/OTJ/L05/Opintopiiriohje.html .

Opintopiireillä on viikoittain kaksi kahden tunnin ohjattua työskelyjaksoa, mutta luultavasti opintopiirin on syytä kokoontua myös omin nokkineen tietoa etsimään ja tehtäviä ratkomaan.

Opintopiirien ohjausryhmät kokoontuvat kahdesti viikossa 24.1.- 18.3.:


  1. Joni Salmi       TI 14-16, PE 10-12 DK110 (paitsi 4.2., 18.2., 4.3. ja 18.3. C220) 
  2. Joni Salmi       TI 16-18, TO  8-10 DK110 (paitsi 3.2., 17.2., 3.3. ja 17.3. BK106)
 [3. Joni Salmi       TI 18-20, PE  8-10 PERUUTETTU!]
  4. Tomi Päiväniemi  MA 16-18 DK110, TI 16-18 BK107 (paitsi 1.2., 15.2., 1.3. ja 15.3. C220)
  5. Tomi Päiväniemi  MA 18-20 DK110, PE 16-18 DK110 (paitsi 4.2., 18.2., 4.3. ja 18.3. C220)

Opintopiirit muodostetaan ensimmäisellä ohjauskerralla. Läsnäolo tässä järjestäytymiskokoontumisessa on välttämätöntä! Poissaolijoiden paikat jaetaan jonottajille. Poissaolija voi siis ihan oikeasti menettää paikkansa! Kurssin työskentelytapojen luonteen takia virallista osanottajamäärää ei voida kasvattaa. Kurssi-ilmoittautumisaikaa käytetään jonotustilanteissa päätöksenteon perusteena.

Opintopiirit työskentelevät kahden viikon aihejaksoina, joita on yhteensä neljä, ks. sivu http://www.cs.helsinki.fi/u/wikla/OTJ/K05/Harjoitukset/. Opintopiirillä on siis joka jaksolla 4x2 tuntia ohjausryhmän kokoontumisia.

Kurssin osasuorituksista saatavat pisteet ja niiden saamisen säännöt esitellään tarkasti sivulla http://www.cs.helsinki.fi/u/wikla/OTJ/K05/Tavat.html.

Kurssin koe on tiistaina 5.4. klo 16-20 saleissa B123 ja CK112. Salijako ilmoitetaan aikanaan. Kokeen pistemaksimi on 28 pistettä. Kurssia ei siis voi suorittaa pelkällä kokeella, koska kurssin läpipääsyraja on alustavasti 30 pistettä! Kurssilla on lisäksi käytössä ns. koeleikkuri, mikä tarkoittaa, että kokeesta on saatava vähintään puolet pisteistä eli 14 pistettä, jotta suoritus hyväksytään.

Arvosana määräytyy seuraavasti:

Osasuoritusten pistemaksimit:

     osallistumispisteitä    4
     itsearviopisteitä       8
     tehtäväpisteitä        20
     koepisteitä            28
                            --
     yhteensä               60

Alustavat arvosanarajat:
     pisteitä: 30  33  36  39  42  45  48  51
     arvosana: 1-  1   1+  2-  2   2+  3-  3

Kurssikirjallisuutta:

Tällä kertaa kurssilla ei ole mitään varsinaista kurssikirjaa. Viime kevään kurssikirjasta voi toki olla iloa: Horstmann & Cornell: Core JavaTM 2 Volume II - Advanced Features, 5th Ed.

Myös seuraavat voivat olla hyödyllisiä:

Horstmann & Cornell: Core JavaTM 2 Volume I - Fundamentals, 6th Ed. Resources. Sun Microsystems Press, A Prentice-Hall Title, 2002.
Lea: Concurrent Programming in JavaTM - Design Principles and Patterns, 2nd Ed. Addison-Wesley, USA, 2000. (Online Supplement)
Koskimies: Oliokirja. Suomen Atk-kustannus Oy, 2000.


Java and all Java-based marks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. University of Helsinki is independent of Sun Microsystems, Inc.