FI:PB161 Programování v jazyce C++ - Informace o předmětu
PB161 Programování v jazyce C++
Fakulta informatikypodzim 2013
- Rozsah
- 2/2. 4 kr. (plus ukončení). Doporučované ukončení: zk. Jiná možná ukončení: z.
- Vyučující
- doc. RNDr. Petr Švenda, Ph.D. (přednášející)
Mgr. Ondřej Bouda (cvičící)
Mgr. Tomáš Brukner (cvičící)
RNDr. Jiří Glozar (cvičící)
Mgr. Jan Juráň (cvičící)
Bc. Dalibor Matura (cvičící)
Mgr. Michal Mikloš (cvičící)
RNDr. Lukáš Ručka (cvičící)
RNDr. Marek Vinkler, Ph.D. (cvičící)
Mgr. Jiří Weiser (cvičící)
Mgr. Ján Bella (pomocník)
Bc. Jan Bilík (pomocník)
Bc. Čestmír Kalina (pomocník)
RNDr. David Klaška (pomocník)
Mgr. Lenka Kuníková (pomocník)
Mgr. Marek Osvald (pomocník)
Mgr. Milan Pánik (pomocník)
Mgr. Lubomír Sedlář (pomocník)
Mgr. Ing. Tomáš Svoboda (pomocník) - Garance
- doc. RNDr. Vlastislav Dohnal, Ph.D.
Katedra počítačových systémů a komunikací – Fakulta informatiky
Dodavatelské pracoviště: Katedra počítačových systémů a komunikací – Fakulta informatiky - Rozvrh
- Po 14:00–15:50 D3
- Rozvrh seminárních/paralelních skupin:
PB161/01: St 14:00–15:50 C525, M. Vinkler
PB161/02: Pá 8:00–9:50 B130, M. Mikloš
PB161/03: Čt 14:00–15:50 B130, J. Juráň
PB161/04: Pá 12:00–13:50 B130, D. Matura
PB161/05: St 12:00–13:50 B116, M. Vinkler
PB161/06: St 8:00–9:50 B117, L. Ručka
PB161/07: Čt 16:00–17:50 B116, J. Juráň
PB161/08: Po 18:00–19:50 B116, J. Juráň
PB161/09: Po 18:00–19:50 B117, T. Brukner
PB161/10: Pá 10:00–11:50 B117, D. Matura
PB161/11: St 18:00–19:50 B117, L. Ručka
PB161/12: Út 8:00–9:50 B116, J. Weiser
PB161/13: Čt 12:00–13:50 B117, O. Bouda
PB161/14: Čt 10:00–11:50 C525, O. Bouda
PB161/15: Čt 18:00–19:50 B116, M. Mikloš
PB161/16: Čt 8:00–9:50 B117, J. Weiser
PB161/17: Út 14:00–15:50 B117, P. Švenda - Předpoklady
- PB071 Úvod do jazyka C || SOUHLAS
Současně se předpokládá znalost operačního systému Unix na uživatelské úrovni, neboť odevzdání domácích úloh a tvorba příkladu ke zkoušce probíhá pod Unixem. - Omezení zápisu do předmětu
- Předmět je nabízen i studentům mimo mateřské obory.
- Mateřské obory/plány
- předmět má 27 mateřských oborů, zobrazit
- Cíle předmětu
- Na konci tohoto kurzu bude student:
rozumět principům objektově orientovaného programování;
schopen základního objektově orientovaného návrhu a jeho implementace;
ovládat základní syntaxi jazyka C++ podle ANSI normy;
používat základní knihovny jazyka C++ (STL);
dokumentovat kód s možností automatického generování dokumentace;
schopen na základní úrovni používat moderní vývojové nástroje (IDE, debugger, verzovací nástroje...);
ovládat základní dobré programátorské návyky;
překládat programy pod OS typu Unix i Windows; - Osnova
- Základní prvky jazyka C++ (s přihlédnutím k C), standardy, kompilátory.
- Základní principy objektově orientovaného programování a metodologie.
- Uživatelsky definované typy. Třídy v C++. Komponenty třídy.
- OOP in C++. Zapouzdření, dedičnost, polymorfismus.
- Dynamická alokace paměti. Dynamická správa paměti. Automatické a třídní ukazatele.
- Vstup a výstup v C++.
- Výjimky a jejich ošetření. Defensivní programování.
- Šablony. Standardní knihovna C++ a standardní knihovna šablon. Knihovny pro numerické výpočty.
- Objetově orientovaný návrh, návrhové vzory.
- Další objektově orientované jazyky. Java a C# ve srovnání s C++.
- Literatura
- STROUSTRUP, Bjarne. The C++ programming language. 3rd ed. Reading: Addison-Wesley, 1997, x, 910 s. ISBN 0-201-88954-4. info
- VIRIUS, Miroslav. Programování v C++. 1. vyd. Praha: ČVUT, 1998, 364 s. ISBN 8001018741. info
- VIRIUS, Miroslav. Pasti a propasti jazyka C++ : podrobný průvodce pokročilého uživatele. 1. vyd. Praha: Grada, 1997, 251 s. ISBN 8071696072. info
- VIRIUS, Miroslav. Od C k C++. 1. vyd. České Budějovice: KOPP, 2000, 227 s. ISBN 80-7232-110-2. info
- LOUIS, Dirk, Petr MEJZLÍK a Miroslav VIRIUS. Jazyky C a C++ podle normy ANSI/ISO: kompletní kapesní průvodce. 1. vyd. Praha: Grada Publishing, 1999, 644 s. ISBN 80-7169-631-5. info
- MEYERS, Scott. Effective C++ :50 specific ways to improve your programs and designs. 2nd ed. Reading: Addison-Wesley, 1998, xx, 256 s. ISBN 0-201-92488-9. info
- Záložky
- https://is.muni.cz/ln/tag/FI:PB161!
- Výukové metody
- Výuka probíhá formou kombinace teoretických přednáškových lekcí s praktickými cvičeními, doplněnými samostatnými domácími programátorskými úlohami procvičujícími probranou látku z přednášek.
- Metody hodnocení
- Student během celého semestru vypracuje 5 domácích úloh, dva psané testy a jedno závěrečné praktické programovací cvičení. Pro úspěšné absolvování je požadován ziska 50 % dosažitelných bodů a úspěšné splenění finálního programovacího cvičení.
Ve cvičeních studenti samostatně vytvářejí zadané programy (obvykle s nutností dokončit doma nebo v počítačové učebně). Zpracování příkladů je bodováno podle předem oznámených kritérií. Doporučené ukončení předmětu je zkouška, která probíhá formou testu prováděného na počítači. Podmínkou připuštění k testu je získání zápočtu ze cvičení a samostatné úspěšné zpracování závěrečného příkladu. Klasifikace závisí na bodovém hodnocení práce ve cvičeních, kvalitě zpracovaného závěrečného příkladu a na výsledku testu.
V případě ukončení zápočtem stačí v patřičných termínech odevzdat řádně zpracované příklady zadávané v průběhu semestru. Závěrečný příklad ani test se u tohoto způsobu ukončení nevypracovává.
Účast ve cvičeních je povinná. - Informace učitele
- http://cecko.eu/public/pb161
Přednášejícího můžete kontaktovat osobně v místnosti G201 v konzultačních hodinách nebo e-mailem na adrese svenda@fi.muni.cz Pokud nemáte absolvován předmět PB071 (prerekvizita), máte možnost získat výjimku na základě úspěšného vypracování srovnávacího testu (zhruba na úrovni závěrečné zkouškové písemky PB071). Test proběhne v prvním týdnu semestru a přesné informace o jeho konání (čas, místo) naleznete týden před začátkem semestru na http://cecko.eu/public/pb161. - Další komentáře
- Studijní materiály
Předmět je vyučován každoročně. - Nachází se v prerekvizitách jiných předmětů
- IB113 Úvod do programování a algoritmizace
!NOW(IB111) && !IB111 && !PB162 && !PB161 && !PB071 && !IB001 && !program(B-INF) && !program(B-PVA) && !program(B-CS) - PB007 Software Engineering I
PB160 || PB161 || PB162 || PB174 || PV178 || PB112 - PV255 Game Development I
PB009 && PV112 && (PB161 || PB162 || PV178) - PV294 Advanced C++
PB161
- IB113 Úvod do programování a algoritmizace
- Statistika zápisu (podzim 2013, nejnovější)
- Permalink: https://is.muni.cz/predmet/fi/podzim2013/PB161