Detail předmětu

Počítače a programování 2

FEKT-BKC-PC2TAk. rok: 2023/2024

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

čeština

Počet kreditů

5

Vstupní znalosti

Jsou požadovány znalosti na úrovni středoškolského studia. Znalost programovánní v ANSI C.

Pravidla hodnocení a ukončení předmětu

Student může získat maximálně 20 bodů za aktivní práci v počítačových cvičení, 20 bodů za průběžné testy během semestru, 30 bodů za zápočtový test na konci semestru a 30 bodů za individuální projekt v jazyce JAVA.
Vymezení kontrolované výuky a způsob jejího provádění stanoví každoročně aktualizovaná vyhláška garanta předmětu.

Učební cíle

Naučit studenty základním algoritmizačním návykům a objektově orientovánému programování. Vysvětlit základní vlastnosti a struktury jazyka JAVA a jejich využití. Připravit studenty na práci v prostředí JAVA Eclipse
Získání základních algoritmizačních návyků a dovednosti objektově orientovaného programování. Pochopení základních vlastností a struktur jazyka JAVA a získání schopnosti je využít. Schopnost základní práce v prostředí JAVA Eclipse.

Základní literatura

Keogh, J.: Java bez předchozích znalostí, Computer press, 2005, ISBN: 9788025108390 . (CS)
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

26 hod., nepovinná

Vyučující / Lektor

Osnova

1) Základy algoritmizace v jazyce JAVA: cykly, větvení, metody, základní datové typy (primitives), reference vs. ukazatele, proměnné, viditelnost proměnných.
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

26 hod., povinná

Vyučující / Lektor

Osnova

1) Vytváření tříd a objektů. Komunikace mezi objekty. Statické datové položky a metody.Vytvoření potomka rodičovské třídy. Překrývání konstruktorů a metod. Tvorba abstraktní třídy. Tvorba rozhraní.
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