- SVARBU: Reikalavimai egzaminui
- MAŽIAU SVARBU: Dėl užduočių struktūros ir susijusių dalykų
Wiki meniu
1-oji užduotis | 2-oji užduotis | 3-oji užduotis | 4-oji užduotis | 5-oji užduotis |
---|
Temų pavadinimai | Medžiaga skaidrėse ir GitHub wiki |
---|---|
1. Kurso apžvalga, C++ standartai, kas yra objektiškai orientuotas programavimas (OOP)?, objekto koncepcija, pažintis su programavimo aplinka: kompiliatorių ir įrankių (IDE) apžvalga, versijų kontrolės sistemos (git), make/cmake įrankiai, unit-testai. | |
2. Baziniai duomenų tipai, tipų transformacija, „l-values“ ir „r-values“, rodyklės ir nuorodos, „l-values“ (konstantinės) nuorodos, dinaminis atminties valdymas, aritmetika su adresais. Funkcijų persidengimas, direktyvos. Įvesties ir išvesties operatoriai. | |
3. Vartotojo tipai, klasės ir objektai, struktūros, konstruktoriai, pagrindinis konstruktorius, destruktoriai, C++ “garbage collector” - pagal „RAII“ paradigmą, objektiškai orientuotas dizainas, interfeisai, inkapsuliavimas, matomumo kontrolė | |
4. Operatorių persidengimas, įvesties/išvesties operatoriai, operatorių persidengimo realizavimo strategijos, kopijavimo konstruktorius, priskyrimo ir kopijavimo konstruktoriaus palyginimas, konstruktorius, seklus ir gilus kopijavimas, „rule of 3” , „r-values“ nuorodos, „move“ semantika, “rule of 5”, “išmaniosios” rodyklės. | |
5. Kompozicija ir agregavimas, paveldėjimas, paveldėjimo kontrolė, konstruktoriai ir paveldėjima, polimorfizmas, virtualios funkcijos, ankstyvas ir vėlyvas binding’as, UML diagramos, dokumentacijos kūrimas su Doxygen. | |
6. Standartiniai išvesties ir įvesties srautai, failų srautai. | |
7. Klaidų ir išimčių valdymas, laiko matavimas (std::chrono biblioteka), atsitiktinių skaičių generavimas. | |
8. Bendrinis programavimas, šablono klasės ir funkcijos. |
|
9. Konteineriai (vektorius, dekas, sąrašas, žemėlapiai, hash lentelės ir t.t.), iteratoriai. Algoritmų apžvalga: efektyvumas su algoritmais, sparta su duomenų struktūromis. |