Praktické programování
| Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
|---|---|---|---|---|
| B2B37PPCA | KZ | 5 | 2P+2C | česky |
- Garant předmětu:
- Přednášející:
- Cvičící:
- Předmět zajišťuje:
- katedra radioelektroniky
- Anotace:
-
Náplň předmětu je koncipována s důrazem na osvojení si základních principů objektového programování a související datové abstrakce. Kromě základních principů C++ se studující seznámí s frameworkem Qt, který lze využít pro řešení celé řady informatických problémů a nabízí širokou škálu nástrojů pro tvorbu multiplatformních aplikací. Součástí předmětu je i demonstrace využití objektového přístupu při programování vestavných systémů.
- Požadavky:
-
Předmět vyžaduje základní znalosti procedurálního programování, které lze získat v předmětu „Procedurální programování“.
- Osnova přednášek:
-
1.Úvod do programování v C++, neobjektové vlastnosti C++, standardní vstup a výstup
2.Kontejnery, iterátory, algoritmy
3.Výjimky, reference, lambdy, přetěžování operátorů
4.Konstruktory a destruktory, RAII
5.Polymorfismus, dědičnost, vztahy mezi objekty
6.Šablony funkcí a tříd, vlákna
7.Qt 1. - úvod do frameworku, komponenty, stylování
8.Qt 2. - event driven programování, události, signály
9.Qt 3. kreslení, grafy a vizualizace dat, multimédia
10.Qt 4. - síťové služby
11.Qt 5. - databáze, MVC
12.Qt 6. komunikace s externími periferiemi, UART a přístrojové sběrnice
13.Využití C++ ve vestavných systémech
14.Nástroje pro správu a nasazení produkčního kódu
- Osnova cvičení:
-
Praktická cvičení jsou zaměřena na získání a procvičování programovacích návyků tak, aby studenti byli schopni samostatně vytvářet čitelné a přenositelné kódy s důrazem na využití existujících standardních knihoven a datových kontejnerů. V průběhu semestru studenti odevzdávají programovací úlohy jejichž bodové hodnocení se skládá z bodů za správnost a efektivitu kódu, dále pak z bodů zohledňující kvalitu zdrojových kódů, jejich čitelnost a znovu použitelnost. Náplň jednotlivých cvičení se skládá z praktického osvojení témat diskutovaných na přednášce a zadání domácího úkolu.
- Cíle studia:
-
Cílem předmětu je seznámit studenty s praktickými aspekty programováni v C/C++. Studenti se naučí efektivně implementovat algoritmy a numerické metody, které se běžně využívají v elektronických systémech.
- Studijní materiály:
-
Doporučená literatura:
STROUSTRUP, Bjarne, The C++ Programming Language, Addison-Wesley, 2014
ECKEL, Bruce. Thinking in C++ Vol-1. 2000.
LAZAR, Guillaume; PENEA, Robin. Mastering Qt 5: Create stunning cross-platform applications using C++ with Qt Widgets and QML with Qt Quick. Packt Publishing Ltd, 2018.
- Poznámka:
-
2p+2c+2d
- Další informace:
- Pro tento předmět se rozvrh nepřipravuje
- Předmět je součástí následujících studijních plánů: