Předmět je základní jednotka výuky, jejímž prostřednictvím si student osvojí ucelenou část souboru znalostí a dovedností, potřebnou pro zvládnutí studijního oboru/specializace. Za věcný obsah předmětu zodpovídá garant předmětu. Časovou náročnost předmětu zhruba vyjadřuje atribut předmětu rozsah kontaktní výuky. Například rozsah = 2+2 značí, že předmět bude mít týdně dvě hodiny přednášek a dvě hodiny cvičení týdně. Na závěr semestru musí vyučující provést vyhodnocení, nakolik si ten který student osvojil poznatky a dovednosti, kterých měl během výuky nabýt. Jakým způsobem toto hodnocení vyučující provedou určuje atribut způsob zakončení. U předmětu lze definovat, že předmět je zakončen pouze zápočtem(Z), klasifikovaným zápočtem(KZ), pouze zkouškou(ZK), nebo zápočtem a zkouškou(Z,ZK). Náročnost úspěšného absolvování předmětu je vyjádřena ECTS kreditními body. Výuka předmětu probíhá během semestru. Opakovaně se předmět vyučuje vždy v zimním(Z), nebo v letním(L) semestru každého akademického roku. Výjimečně může předmět být nabízen studentům v obou semestrech(Z,L). Za organizační zajištění výuky zodpovídá přiřazená katedra, která zejména vytvoří časový rozvrh předmětu a zajistí pro předmět vyučující. Někteří přednáší a zkouší, jiní vedou cvičení a udělují zápočty.
Obsahová náplň a další organizační informace, týkající se předmětu je popsána pomocí různých popisných textů(anotace, týdenní osnova, literatura, apod.)
$DODATEK_POPIS
BI-PA2 | Programování a algoritmizace 2 | Rozsah kontaktní výuky: | 2P+1R+2C | ||
---|---|---|---|---|---|
Vyučující: | Způsob zakončení: | Z,ZK | |||
Zodpovědná katedra: | 18101 | ECTS Kredity: | 7 | Semestr: | L |
Anotace:
Studenti se naučí základům objektově orientovaného programování a naučí se specifikovat a implementovat abstraktní datové typy (zásobník, fronta, rozšiřitelné pole, množina, tabulka). Programovacím jazykem je C++. Přestože se nejedná o kurz tohoto jazyka, studenti jsou seznámeni se všemi rysy C++ důležitými pro splnění hlavního cíle (např. přetěžování operátorů, šablony).
Osnovy přednášek:
1. | Jazyk C++, neobjektová rozšíření. | |
2. | Programovací styly, objektově orientované programování. | |
3. | Přetěžování operátorů 1. | |
4. | Přetěžování operátorů 2, mělká a hluboká kopie. | |
5. | Dědičnost. | |
6. | Polymorfismus. | |
7. | Abstraktní třídy, výjimky. | |
8. | Šablony. | |
9. | [3] Specifikace a implementace abstraktních datových typů (zásobník, fronta, pole, seznam, tabulka, množina). | |
10. | Proudová knihovna, serializace objektů. | |
11. | Událostmi řízený program, knihovna QT. |
Osnovy cvičení:
1. | Na prosemináři učitel řeší vzorové úlohy, komentuje postup a případně doplní nové, na přednášce neuvedené informace. Studenti kopírují postup učitele na svých noteboocích, vkládají poznámky a mají dotazy. | |
2. | Na počítačových cvičeních studenti řeší zadané úloh navazující na přednášky a prosemináře, cvičící poskytuje konzultace a rady. |
Literatura:
1. | Virius, M. Jazyky C a C++: kompletní kapesní průvodce programátora. Praha: Grada, 2006. ISBN 80-247-1494-9. | |
2. | Virius, M. Od C k C++. České Budějovice: Kopp, 2000. ISBN 80-7232-110-2. |
Požadavky:
Základy algoritmizace a programování v jazyku C.
|
Předmět je zahrnut do těchto studijních plánů:
Stránka vytvořena 17. 4. 2024, semestry: Z/2020-1, L/2023-4, Z,L/2022-3, L/2019-20, Z/2021-2, Z/2024-5, Z/2023-4, Z/2019-20, L/2021-2, L/2020-1, připomínky k informační náplni zasílejte správci studijních plánů | Návrh a realizace: J. Novák, I. Halaška |