Detail předmětu

Praktické programování v C++

FEKT-BPC-PPCAk. rok: 2018/2019

Předmět se věnuje praktickému zvládnutí základů jazyka C++, jako rozšíření jazyka C (v návaznosti na látku probranou v předchozích předmětech).
Studenti se seznámí se základními neobjektovými rozšířeními jazyka C, se základy objektového programování. Dále se seznámí s nástroji pro tvorbu programu v C++ a standardními knihovnami.

Výsledky učení předmětu

Absolvent předmětu je schopen:
- používat neobjektové rozšíření jazyka
- provést návrh programu využívajícího objektové programování
- naprogramovat a použít navržené objekty (přístupová práva, členská data, metody, operátory)
- orientace v objektově napsaných programech,
- napsat objektově orientovaný program se základním použitím dědění včetně virtuálních metod,
- použít streamů pro vstupně výstupní operace,
- vytvářet šablony,

Prerekvizity

Absolvování kurzu BPC-UDP a úspěšné absolvování BPC-ALD nebo kurzů s podobnou náplní.

Literatura

VIRIUS, M.: Programování v C++ od základů k profesionálnímu použití, Grada publishing, 2018, ISBN: 978-80-271-0502-1 (CS)
STROUSTRUP, B.: The C++ Programming Language. Addison-Wesley,2013. 1368 s. ISBN-13: 978-0321563842. (EN)
ALEXANDRESCU, A.: The C++ Standard Library, Addison Wesley 2012, ISBN 978-0321623218 (EN)
VIRIUS, M.: Jazyky C a C++. 2. , aktualizované vydání. Praha: Grada Publishing, 2011. 368 s. ISBN 9788024739175. (CS)

Plánované vzdělávací činnosti a výukové metody

Metody vyučování zahrnují přednášky a cvičení na počítači. Předmět využívá www stránky ve spojení s e-learningem (Moodle). Student odevzdává jeden samostatný projekt během semestru.

Způsob a kritéria hodnocení

cca 40b - projekt - tvorba třídy v návaznosti na přednášky a cvičení.
cca 60b - písemné zkoušky, testy.
Konkrétní bodovou kombinaci (do 100bodů) a podmínky pro uspěšné ukončení předmětu stanoví každoročně aktualizována vyhláška garanta předmětu.

Jazyk výuky

čeština

Osnovy výuky

1. Úvod. Opakování C – datové typy, programovací techniky, algoritmizace.
2. Srovnání C a C++. Objektové možnosti C++. Pojem objektu a jeho návrh.
3. Práce s proměnnými pomocí reference. Definice objektu. Přístup k proměnným pomocí this.
4. Přetěžování funkcí a metod. Implicitní parametry funkcí.
5. Konstruktory a destruktory. Životní cyklus proměnných. Pojem viditelnosti a dosažitelnosti obsahu proměnné.
6. Operátory. Friend funkce.
7. Inline funkce a metody. Rozdělení třídy mezi hlavičkový a zdrojový soubor.
8. C++ knihovna pro standardní vstupy a výstupy, pojem stream.
9. Pojem dědění v kontextu objektového programování.
10. Vícenásobné dědění.
11. Virtuální metody.
12. Abstraktní třída a její využití při objektovém návrhu.
13. Pojem výjimka v C++, princip šíření výjimek v programu. Generické programování, pojem šablona.

Cíl

Praktické zvládnutí základů jazyka C++, jako rozšíření jazyka C.
Získat základní programatorské dovednosti v oblasti objektového programování.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

Vymezení kontrolované výuky a způsob jejího provádění stanoví každoročne aktualizovaná vyhláška garanta předmětu.

Zařazení předmětu ve studijních plánech

  • Program BPC-AMT bakalářský, 3. ročník, zimní semestr, 6 kreditů, povinný
  • Program BPC-EKT bakalářský, 3. ročník, zimní semestr, 6 kreditů, povinně volitelný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Cvičení na počítači

26 hod., povinná

Vyučující / Lektor

Projekt

13 hod., nepovinná

Vyučující / Lektor