Objektorienteeritud programmeerimine keeles C++ (IFI6071.DT)
Õppeaine kood
IFI6071.DT
vana ainekood
IFI6071
Õppeaine nimetus eesti k
Objektorienteeritud programmeerimine keeles C++
Õppeaine nimetus inglise k
Object Oriented Programming in C++
Õppeaine maht EAP
3.0
Orienteeruv kontakttundide maht
42
Õpetamise semester
sügis-kevad
Kontrollivorm
eksam
2019/2020 sügissemestri õppejõud
Jaagup Kippar (eesti keel) e-toega kursus
2019/2020 kevadsemestri õppejõud
õppejõud on määramata
Õppeaine eesmärgid
Anda ülevaade programmeerimiskeelest C++ ning selle kui objektorienteeritud programmeerimiskeele kasutamisest tarkvaraarenduses.
Õppeaine sisu lühikirjeldus
Objektid tarkvaraarenduses kui reaalse maailma objektide peegeldused. Empiirilised põhireeglid objektorienteeritud lähtekoodi loomisel. Objektorienteeritud keele C++ kujunemise ajalugu ja kasutusvaldkonnad, keele struktuur. Objektide kirjeldamine C++-s - klassid. Objekti andmed ja meetodid (klassi andmed ja liikmesfunktsioonid), inline-funktsioonid. Kapseldumine. Päritavus. Polümorfism. Virtuaalsed funktsioonid. Mallid. Eksemplar. Konstruktor ja destruktor. Funktsioonide ümberlaadimine. Funktsiooni parameetrite vaikeväärtused. Vea- ja eranditöötlus, try-catch püünis. Operaatorite ümberlaadimine. Operaatorid new ja delete. C#, Java ja C++ võrdlus. Disainimustrid.
Iseseisev töö
Iseseisev töö seisneb erinevate programmeerimisülesannete lahendamises.
Täpsem info kursuse lehel
Õppeaine õpiväljundid
Kursuse läbinu mõistab objektorienteerituse eesmärke ja kasutusvaldkondi ning suudab C++ näitel seletada ning valmis ehitada enamiku tavalisematest objektorienteeritud programmeerimise juures ette tulevatest konstruktsioonidest ning disainimustritest.
Hindamismeetodid
Eksam. Eksamile pääsemise eelduseks on positiivsele tulemusele tehtud 5 iseseisvat tööd ja kontrolltöö. Hinde saamiseks peab õppija suutma kaitsta ja vajadusel täiendada iseseisvalt lahendatud programmeerimisülesandeid, suutma seletada kursuse teooriamaterjali käigus läbitud punkte ning lahendada õppejõu silma all programmeerimisülesande. Täpsem kirjeldus kursuse lehel.
Õppejõud
Jaagup Kippar
Kohustuslik kirjandus

Thinking in C++
http://www.codewithc.com/thinking-in-c-pdf-bruce-eckel/
C++11 ja C++03 spetsifikatsioonide võrdlus:
http://minitorn.tlu.ee/teemaderegister/get_file.php?id=219&name=roman_gorislavski.pdf
C++ spetsifikatsiooni uuendustega kaasnevate muudatuste analüüs
http://minitorn.tlu.ee/teemad/get_file.php?id=647

Asenduskirjandus
Asenduskirjanduse abil kursuse läbimine on võimalik kokkuleppel õppejõuga.