Olio-ohjelmointi (C++)Laajuus (3 op)
Opintojakson tunnus: TT00VI01
Opintojakson perustiedot
- Laajuus
- 3 op
Osaamistavoitteet
Opiskelija tuntee C++-kielen ja sen erityispiirteet olio-ohjelmoinnissa. Opiskelija osaa määritellä luokan, luoda olion ja kirjoittaa koodia, jossa oliota käytetään. Opiskelija osaa olioiden välisen yhteistyön, periytymismekanismin ja pystyy hyödyntämään dynaamista sidontaa. Opiskelija osaa käyttää operaattorifunktioita.
Sisältö
- olion automaattinen ja dynaaminen luonti
- konstruktorit ja destruktorit
- periytyminen, assosiaatiot, koostuminen
- virtuaalifunktiot ja myöhäinen sidonta
- erilaiset parametrityypit
- kopiointikonstruktori
- operaattorifunktiot
- geneeriset funktiot
Esitietovaatimukset
Ohjelmoinnin perusteet
Osallistujilta edellytetään perustiedot yksinkertaisten www-sovellusten ohjelmoinnista.
Arviointikriteerit, tyydyttävä (1)
- Opiskelija ymmärtää luokan ja olion eron
- Opiskelija ymmärtää, miksi luokkia yleensä tarvitaan ja käytetään. Opiskelija osaa itse laatia yksinkertaisia luokkia ja käyttää niitä.
- Opiskelija ymmärtää mitä merkitsevät koostuminen, periytyminen
- Opiskelijalla on käsitys siitä, että luokan suunnittelussa pyritään luokan yleiskäyttöisyyteen.
Arviointikriteerit, hyvä (3)
- Opiskelija ymmärtää dynaamisen muistinkäytön edut ja haitat olioiden käytössä ja suunnittelussa.
- Opiskelija ymmärtää ja osaa ottaa huomioon luokan suunnittelussa dynaamisten datajäsenten aiheuttamat haasteet (destruktorin tarve, kopiokonstruktorin tarve, sijoitusoperaattorin tarve jne).
- Opiskelija osaa valita tilanteeseen sopivan luokkasuhteen (periytyminen, assosiaatio, koostuminen) hyödyntäessään uuden luokan toteutuksessa olemassa olevaa luokkaa.
- Opiskelija osaa myös toteuttaa uuden luokan yllämainituilla luokkasuhteilla.
- Opiskelija osaa käyttää virtuaalisia funktioita ja abstrakteja luokkia
Arviointikriteerit, kiitettävä (5)
- Opiskelija osaa ottaa sovellusten ja luokkien suunnittelussa ja toteutuksessa huomioon mahdolliset muistivuodot ja osaa estää niiden syntymisen kaikissa tilanteissa (myös poikkeustilanteissa).
- Osoittimien käyttö on sujuvaa
- Opiskelija osaa käytännössä valita ratkaisuja, jotka edistävät uudelleenkäytettävyyttä
Lisätiedot
1. Olioparadigmojen toteutustavat eri ohjelmointikielissä
2. Suunnitteluaineiston hyödyntäminen
3. Käyttöliittymän ja sovelluslogiikan eristäminen (MVC)