Přeskočit na hlavní obsah
Přeskočit hlavičku
Ukončeno v akademickém roce 2024/2025

Programování v C++ II

Typ studia bakalářské
Jazyk výuky čeština
Kód 460-2072/01
Zkratka C++ II
Název předmětu česky Programování v C++ II
Název předmětu anglicky C++ Programming II
Kreditů 4
Garantující katedra Katedra informatiky
Garant předmětu doc. Ing. Petr Gajdoš, Ph.D.

Osnova předmětu

Přednášky budou sloužit jako vstupní bod pro cvičení. Kladou si za cíl uvést posluchače do problematiky a nastínit následnou práci na cvičeních.

Přednášky budou zahrnovat přinejmenším tato témata:

- template funkce a datové typy
- triky pro optimalizaci běhu programu
- práce s vlákny
- lambda výrazy
- binární masky, enumerátory
- metaprogramování, type predicates, traits
- případová studie: konstrukce vlastní třídy pro práci s dynamickou pamětí, move konstrukce a související operátory, definování vlastních iterátorů, range iterátor
- případová studie: variadické funkce
- případová studie: propojení c++ s dalšími nástroji (MATLAB, R, nodeJS)
- případová studie: vybrané příklady z programování (ACM-ICPC)

Obsah cvičení bude korespondovat vždy s danou přednáškou a tématem:

1. Vytváření template metod a tříd
2. Možné optimalizace běhu programu
3. Vlákna a jejich využití
4. Lambda výrazy
5. Binární masky, enumerátory
6. Metaprogramování, type predicates, traits
7.-8. Případová studie: dynamická alokace paměti, move konstrukce a související operátory, definování vlastních iterátorů, range iterátor
9.-10. Případová studie: variadické funkce
11.-12. Případová studie: Propojení c++ s dalšími nástroji (MATLAB, R, nodeJS)
13.-14. Případová studie: vybrané příklady z programování (ACM-ICPC)

Povinná literatura

[1] Stroustrup, Bjarne. The C++ programming language. Upper Saddle River, NJ: Addison-Wesley, 2013. Print.

[2] Bancila, Marius. Modern C++ programming cookbook : over 100 recipes to help you overcome your difficulties with C++ programming and gain deeper understanding of the working of modern C. Birmingham, UK: Packt Publishing, 2017. Print.

Doporučená literatura

[1] Galowicz, Jacek. C++17 STL Cookbook. Birmingham: Packt Publishing, 2017. Print.

[2] Savitch, Walter J., and Kenrick Mock. Problem solving with C++. 9th Edition, Boston: Pearson, 2015. Print.