suomeksi
in English

C++ Programming (C0199), 5 op

Basic information

Course name:C++ Programming
C++ ohjelmointi
Course Winha code:C0199
Kurre acronym:C++
Credits:5
Type and level of course:Professional studies
Year of study, semester or study period:3.year
Implementation:Spring semester, Autumn semester, 1.period, 2.period
Semester:0708
Language of tuition:English
Teacher:Hannu Laine
Final assessment:Grading scale (0-5)

Descriptions

Prerequisites

Ohjelmointi
Algoritmit ja tietorakenteet

Course contents (core content level)

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

Course contents (additional)

Olioiden vuorovaikutus ja "yhteispeli"
Sovellusrunkojen periaate
Hyödyllisiä suunnittelumalleja (design patterns
Observer-suunnittelumalli
Silta-suunnittelumalli

Core content level learning outcomes (knowledge and understanding)

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ä.

Core content level learning outcomes (skills)

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).

Recommended reading

Luentomonisteet ja luentokalvot.

Teaching and learning strategies

Luennot, laboratorioharjoitukset ja ryhmätyöprojekti

Teaching methods and student workload

Lectures
Individual research, reading
Exam
Laboratory assignments
Report/project

Assessment weighting and grading

Tentti 80%
Laboratorioharjoitukset ja ryhmätyöprojekti 20%

Related competences of the degree programme

Software Engineering

login