Olio-ohjelmointi (5op)
Toteutuksen tunnus: R504T58OJ-19004
Toteutuksen perustiedot
- Ilmoittautumisaika
- 19.03.2021 - 23.08.2021
- Ilmoittautuminen toteutukselle on päättynyt.
- Ajoitus
- 30.08.2021 - 08.10.2021
- Toteutus on päättynyt.
- Opintopistemäärä
- 5 op
- Toteutustapa
- Lähiopetus
- Opetuskielet
- suomi
- Paikat
- 0 - 45
- Koulutus
- Tieto- ja viestintätekniikan koulutus
Arviointiasteikko
H-5
Tavoitteet
Opintojakson tavoitteena on antaa opiskelijalleperustiedot olio-ohjelmoinnista Java-kielellä (Java SE) sekä olio-ohjelmoinnin teoriasta ja käsitteistä.
Olio-ohjelmointi -opintojen jälkeen opiskelija osaa olio-ohjelmoinnin perusteet sekä tunnistaa kuinka se eroaa strukturaalisesta ohjelmoinnista. Opintojakson aikana opiskelija perehtyy korkeamman tason ohjelmointikieleen.
Sisältö
Olio-ohjelmointi Javalla
- Abstraktit tietotyypit
- Java-kielen perussyntaksi
- Luokat ja oliot
- Luokkien väliset suhteet
- Olio- ja luokkamuuttujat
- Olio- ja luokkametodit
- Olio-ohjelmoinnin perusperiaatteet: kapselointi (encapsulation), tiedon kätkentä (information hiding), periytyminen (inheritance) ja monimuotoisuus (polymorphism)
- Viite- ja arvosemantiikka
- Metodien kuormittaminen
- Metodien korvaaminen
- Aikainen ja myöhäinen sidonta
Javan työasemaohjelmointi (Java SE)
- Kehitysympäristön asennus ja käyttö: JDK, Eclipse IDE, NetBeans IDE ja JavaFX Scene Builder
- Java-virtuaalikone ja luokkakirjasto
- Javan oliomalli ja olio-ohjelmoinnin perusperiaatteiden toteutus Java-kielessä
- Merkkijonojen käsittely
- Tietorakenteet: taulukot ja säiliöt (generic collections)
- Poikkeusten käsittely
- Graafinen käyttöliittymä (Swing ja JavaFX) ja tapahtumien käsittely
Extra-materiaali aiemmin (Javan) olio-ohjelmointiin perehtyneille
- Funktionaalinen ohjelmointi Javalla: lambda-lausekkeet ja sarjat (streams)
- Geneerinen ohjelmointi Javalla: geneeriset luokat, rajapinnat ja metodit
- Rinnakkainen ohjelmointi Javalla: säikeet ja säikeiden synkronointimenetelmät
Aika ja paikka
Kaikki tunnit pidetään Adobe Connect -etäluokassa 30.8. - 8.10.2021.
Oppimateriaalit
Luentomateriaalit, esimerkit ja tehtävät Moodle-työtilassa
Oheislukemistot ja referenssit:
+Deitel, P. & Deitel, H. 2018. Java How To Program. 11. tai myöhempi painos. Pearson Education Limited
+Eclipse IDE (https://www.eclipse.org/downloads /)
+Java Development Kit Version 11 API Specification (https://docs.oracle.com/en/java/javase/11/docs/api/index.html)
+NetBeans IDE (https://netbeans.org/images_www/v6/download/community/8.2/)
Opetusmenetelmät
Luennot ja harjoitukset Adobe Connect -etäluokassa. Henkilökohtainen ohjaus Teamsissa. Itsenäinen opiskelu ja ohjelmointiharjoittelu.
Tenttien ajankohdat ja uusintamahdollisuudet
Loppukoe Moodlessa viikolla 40/2021. Uusintakokeet sovitaan tapauskohtaisesti.
Opiskelijan ajankäyttö ja kuormitus
Varaa opiskeluun riittävästi aikaa. Olio-ohjelmoinnin omaksuminen vaatii runsaasti omaehtoista ohjelmointiharjoittelua. Kurssin suorittamisen kannalta on olennaista, että pysyt ryhmän tahdissa, koska uutta asiaa on paljon ja oppiminen perustuu aiemmin opittuun.
Arviointikriteerit, tyydyttävä (1)
Tyydyttävä (1)
Opiskelija tekee olio-ohjelmoinnin oppimistehtävät ohjaajan opastuksella. Tulokset ja tekemisen laatu täyttävät vain työlle asetetut minimivaatimukset.
Tyydyttävä (2)
Opiskelija tekee olio-ohjelmoinninoppimistehtävät osittain itsenäisesti. Tulokset ja tekemisen laatu ylittävät työlle asetetut minimivaatimukset.
Arviointikriteerit, hyvä (3)
Hyvä (3)
Opiskelija tekee olio-ohjelmoinnin oppimistehtävät itsenäisesti. Tulokset ja tekeminen ovat pääosin laadukasta.
Hyvä (4)
Opiskelija tekee olio-ohjelmoinnin oppimistehtävät itsenäisesti. Tulokset ja tekeminen ovat laadukasta.
Arviointikriteerit, kiitettävä (5)
Kiitettävä (5)
Opiskelija tekee olio-ohjelmoinnin oppimistehtävät omatoimisesti ja itsenäisesti. Tulokset ja tekeminen ovat korkealaatuisia.
Esitietovaatimukset
NULL