Detail předmětu
Počítače a programování 2
FEKT-BKC-PC2TAk. rok: 2020/2021
Obecný úvod do algoritmizace, obecný úvod do objektově orientovaného programování, řídící sekvence jazyků vyšších řádů, aplikační programové prostředí jazyka JAVA Eclipse.
Jazyk výuky
Počet kreditů
Garant předmětu
Zajišťuje ústav
Výsledky učení předmětu
Prerekvizity
Plánované vzdělávací činnosti a výukové metody
Způsob a kritéria hodnocení
Osnovy výuky
2. Třídy a objekty. Základní datové typy (primitivy) vs. objekty. Reference. Viditelnost proměnných a atributů v rámci programu.
3. Dědičnost. Třída vs. abstraktní třída vs. rozhraní. Polymorfismus. Vnitřní třídy
4. Výjimky a princip ošetřování neočekávaných událostí. Vyvolání výjimky. Vícenásobné vnoření výjimek a jejich ošetřování. Hierarchické členění výjimek. Tvorba vlastních výjimek
5. Rekurze v programování. Princip rekurze a úvod do řešení problému pomocí rekurze
6. Textové soubory a standardní vstup a výstup. Vstupně/výstupní datové proudy, práce se souborovým systémem, soubory, adresáře, vytváření, mazání, modifikace přístupových práv
7. Pokročilé datové typy. Kolekce, seznamy ( ArrayList, LinkedList), množiny (HashSet, TreeSet), mapy (HashMap, TreeMap), iterátory. Procházení kolekcemi v cyklu
8. Znakové řetězce, práce s řetězci. Výčtový typ, obálkový typ. Generické programování
9. Ladění a testování programů. Jednotkové testy. Tvorba dokumentace
10. Grafické uživatelské rozhraní. Událostmi řízené programování. Návrhový vzor Model-Pohled-Kontroler
11. Více-vláknové zpracování. Procesy vs. vlákna. Atomicita. Synchronizace vláken. Uvíznutí vláken
12. Principy objektově orientovaného návrhu programů. Návrhové vzory a jejich použití
13. Správa větších projektů. Importování knihoven a práce s API. Tvorba vlastní knihovny
Učební cíle
Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky
Základní literatura
Pecinovský, R.: Myslíme objektově v jazyku Java -- kompletní učebnice pro začátečníky, Grada , 2008, ISBN: 978-80-247-2653-3. (CS)
Schildt , H.: Java: A Beginner's Guide, McGraw-Hill Education, 2014, ISBN: 978-0071809252. (EN)
Schildt , H.: JAVA 8 - výukový kurz, Computer Press, 2016, ISBN: 9788025146651. (CS)
Elearning
Zařazení předmětu ve studijních plánech
- Program BKC-TLI bakalářský 2 ročník, letní semestr, povinný
Typ (způsob) výuky
Přednáška
Vyučující / Lektor
Osnova
2) Třídy a objekty. Základní datové typy (primitivy) vs. objekty. Reference. Viditelnost proměnných a atributů v rámci programu. Dědičnost. Třída vs. abstraktní třída vs. rozhraní. Polymorfismus. Vnitřní třídy.
3) Výjimky a princip ošetřování neočekávaných událostí. Vyvolání výjimky. Vícenásobné vnoření výjimek a jejich ošetřování. Hierarchické členění výjimek. Tvorba vlastních výjimek. Textové soubory a standardní vstup a výstup. Vstupně/výstupní datové proudy, práce se souborovým systémem, soubory, adresáře, vytváření, mazání, modifikace přístupových práv.
4) Pokročilé datové typy. Kolekce, seznamy ( ArrayList, LinkedList), množiny (HashSet, TreeSet), mapy (HashMap, TreeMap), iterátory. Procházení kolekcemi v cyklu. Znakové řetězce, práce s řetězci. Výčtový typ, obálkový typ. Generické programování.
5) Grafické uživatelské rozhraní. Událostmi řízené programování. Návrhový vzor Model-Pohled-Kontroler.
Cvičení na počítači
Vyučující / Lektor
Osnova
2) Práce se seznamy (ArrayList a LinkedList). Práce s množinami (HashSet a TreeeSet). Práce s mapami (HashMap a TreeMap). Použití obálkových typů. Použití výčtových typů. Tvorba a použití generické třídy.
Elearning