C++ -ohjelmointi (T0199), 5 op
Perustiedot
Kurssin nimi: | C++ -ohjelmointi |
Winhakoodi: | T0199 |
Kurren lyhenne: | C++ |
Opintopisteet: | 5 |
Opintojakson taso: | Ammattiopinnot |
Toteutusvuosi: | 3.vsk |
Jakso: | Syyslukukausi, 1.jakso, 2.jakso |
Lukuvuosi: | 0607 |
Opetuskieli: | Suomi |
Opettaja: | Hannu Laine |
Lopullinen arviointi: | Arvosteluasteikolla (0-5) |
Kuvaukset
Esitietovaatimukset
Ohjelmointi T0189
Algoritmit ja tietorakenteet T0197
Sisältö (ydinaines ja -osaaminen)
C-kielen ja C++-kielen erot
Olioparadigma ja C++
Luokat ja oliot
C++:n standardiluokat
Konstruktorit ja destruktorit
Funktioiden ja operaattorien ylikuormitus
Periyttäminen ja sen merkitys
Geneerisyys ja polymorfismi
Virtuaalimetodit
Template funktiot ja luokat
STL-kontainerit , iteraattorit ja algoritmit
Poikkeukset
Sisältö (täydentävä ja erityisosaaminen)
Olioiden vuorovaikutus ja "yhteispeli"
Sovellusrunkojen periaate
Hyödyllisiä suunnittelumalleja (design patterns
Observer-suunnittelumalli
Silta-suunnittelumalli
Tiedolliset oppimistulokset (ydinaines ja -osaaminen)
Opintojakso antaa perusvalmiudet olio-ohjelmoinnin hyväksikäyttöön käytännön ohjelmistotyössä C++-kielellä. Kurssin suoritettuaan opiskelija ymmärtää olio-ohjelmoinnin periaatteet ja tavoitteet Opiskelija ymmärtää luokkien ja olioiden erilaisten suhteiden ominaisuudet ja käyttötavat. Opiskelija ymmärtää myös tehokkaan muistinkäytön merkityksen ja hallitsee tekniikat sen toteuttamiseen myös poikkeuksien yhteydessä.
Taidolliset oppimistulokset (ydinaines ja -osaaminen)
Kurssin suoritettuaan opiskelija osaa soveltaa edellä mainittuja asioita käytännössä ohjelmistojen suunnittelussa ja toteutuksessa C++-kielellä. Hän osaan valita sopivia, tehokkaita, luotettavia, selkeitä ja uudelleenkäytettäviä ratkaisuja. Lisäksi opiskelija ymmärtää kielen syntaksin ja semantiikan niin hyvin, että hän osaa ilmaista asiat selkeästi C++-kielellä oman ajattelun pohjalta (eikä pääasiassa korjaamalla ilmaisuja kääntäjän virheilmoitusten pohjalta). Opiskelija pystyy kurssin suoritettuaan oppimaan erilaisten luokkakirjastojen ja sovellusrunkojen käytön ohjelmoinnin perustana (esimerkiksi Symbian sovellusrunko).
Kirjallisuus ja muu materiaali
Luentomonisteet ja luentokalvot.
Opetusmenetelmät
Luennot, harjoitukset ja ryhmätyö.
Opiskelijan kuormittavuus
Luennot - 28
Itsenäinen työskentely ja kirjallisuuteen tutustuminen - 31
Tentti - 3
Laboratoriotyöt - 28
Projektit - 30
Arvioinnin perusteet
Tentti 80%
Laboratoriotyöt ja projekti 20%
Koulutusohjelmakohtaiset kompetenssit
Ohjelmistotekniikka