Olio-ohjelmointi (C++) (3 op)
Toteutuksen tunnus: TT00VI01-3040
Toteutuksen perustiedot
Ajoitus
31.12.2022
Opintopistemäärä
3 op
Virtuaaliosuus
3 op
Toteutustapa
Etäopetus
Yksikkö
ICT ja tuotantotalous
Toimipiste
Karaportti 2
Opetuskielet
- Suomi
Paikat
0 - 1000
Koulutus
- Tieto- ja viestintätekniikan tutkinto-ohjelma
Opettaja
- Mika Hyyryläinen
Vastuuopettaja
Janne Salonen
Ryhmät
-
VIOPE_NonStop4VIOPE_NonStop4
Tavoitteet
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
Aika ja paikka
Koska kyseessä on 100% itsenäisesti suoritettava kurssi, riippuu opiskelupaikka ja -aika opiskelijasta itsestään.
Oppimateriaalit
Löytyy kurssin oppimisympäristöstä.
Opetusmenetelmät
100% netin kautta itsenäisesti suoritettava kurssi.
Harjoittelu- ja työelämäyhteistyö
N/A
Tenttien ajankohdat ja uusintamahdollisuudet
Löytyy kurssin oppimisympäristöstä.
Kansainvälisyys
N/A
Toteutuksen valinnaiset suoritustavat
N/A
Opiskelijan ajankäyttö ja kuormitus
Riippuu opiskelijasta itsestään.
Sisällön jaksotus
Riippuu opiskelijasta itsestään.
Lisätietoja opiskelijoille
ILMOITTAUTUMINEN
Avoimen AMK:n opiskelijat hakijan työpöydällä osoitteessa: https://hakija.oma.metropolia.fi
CampusOnline opiskelijat: osoitteesta https://campusonline.fi/opintojaksot/ löytyvän e-lomakkeen kautta
Metropolian tutkinto-opiskelijat: https://vw4.viope.com/login?org=metropolia .
Rekisteröidy klikkaamalla sisäänkirjautumisikkunan vasemmasta laidasta Ilmoittaudu kurssille (Enroll on the Course).
Valitse jokin Viope-kurssi, jonka lopussa lukee tämä täsmenne: (NonStop).
Täytä muut tähdellä merkityt kohdat.
Nyt voit aloittaa myös muita Viopen ohjelmointikursseja, joissa on sama täsmenne (NonStop).
Jos rekisteröitymisessä on ongelmia, ota sähköpostitse yhteyttä osoitteeseen viopesupport@metropolia.fi
Arviointiasteikko
Hyväksytty/Hylätty
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ä
Arviointimenetelmät ja arvioinnin perusteet
Kun olet tehnyt 80% tehtävistä, niin kurssiarvioinnin saamiseksi sinun tulee lähettää sähköpostiviestiä osoitteeseen: viopesupport@metropolia.fi
Esitietovaatimukset
Ohjelmoinnin perusteet
Osallistujilta edellytetään perustiedot yksinkertaisten www-sovellusten ohjelmoinnista.
Lisätiedot
1. Olioparadigmojen toteutustavat eri ohjelmointikielissä
2. Suunnitteluaineiston hyödyntäminen
3. Käyttöliittymän ja sovelluslogiikan eristäminen (MVC)