Detail předmětu

Seminář Java (v angličtině)

FIT-IJAeAk. rok: 2019/2020

Objektová orientace. Přehled jazyka Java - objekty, třídy, programovací techniky, knihovny, vývojová prostředí. Návrhové vzory. Ladění a údržba programů. Grafická uživatelská rozhraní, vlákna.

Jazyk výuky

angličtina

Počet kreditů

5

Garant předmětu

Nabízen zahradničním studentům

Všech fakult

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

Schopnost aplikace objektově orientovaného přístupu k tvorbě aplikací s využitím jazyka Java. Praktická zkušenost s tvorbou grafických uživatelských rozhraní a využitím návrhových vzorů.
Základy objektově orientovaného programování, znalost základních návrhových vzorů.

Prerekvizity

Základní znalosti imperativního programování (jazyk C) a algoritmizace.

Způsob a kritéria hodnocení

  • Vypracovat úkoly.
  • Vypracovat a prezentovat projekt.
  • Získat nejméně 20 bodů z projektu a 50 bodů celkem.

Učební cíle

Cílem je naučit studenty základy objektově orientovaného programování v jazyce Java.

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

  • Vypracování domácích úkolů a projektu.

Prerekvizity a korekvizity

Základní literatura

Bruce Eckel: Thinking in Java (4th Edition), 2006, ISBN-13: 978-0131872486 [some editions are available electronically on WWW] 

Doporučená literatura

Joshua Bloch: Effective Java, Prentice Hall; 2 edition (May 28, 2008), ISBN-13: 978-0321356680
The Java Tutorials. https://docs.oracle.com/javase/tutorial/
Bruce Eckel: Thinking in Java (4th Edition), 2006, ISBN-13: 978-0131872486 [some editions are available electronically on WWW]

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

  • Program IT-BC-1H bakalářský

    obor BCH , libovolný ročník, zimní semestr, doporučený

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

  1. Úvod do jazyka Java: Historie, nástroje, distribuce, Java Virtual Machine (JVM). Základy OO: Objekt, třída, rozhraní, abstrakce, zapouzdření, konstruktory.
  2. Datové typy. Deklarace třídy, modifikátory přístupu. Sestavení a spuštění aplikace, struktura aplikace (balíky), import tříd.
  3. Základy OO: Dědičnost, polymorfismus. Inicializace objektu. Pole. Příkazy, základní operátory. Ladění programu (assert).
  4. Hierarchie dědičnosti, typová kontrola, typová konverze, porovnávání objektů. Rozhraní v Javě. Ladění programu.
  5. Výjimky. Abstraktní třídy, vnořené třídy, výčtový typ, statické třídy a proměnné.
  6. Kontejnery: Iterátor, kolekce, seznam, množina, mapa. Generické kontejnery. For-each loop, autoboxing.
  7. Vlákna (threads): Sdílení, plánování, synchronizace.
  8. Grafické uživatelské rozhraní JFC/Swing. Technika návrhu aplikace.
  9. Vstup/Výstup: Práce se soubory, proudy, komprimace, serializace.
  10. Znovupoužitelnost, návrhové vzory.
  11. Generics. Zásady programování v Javě.
  12. JVM: zavádění tříd, správa paměti, garbage collector, profiling.
  13. Java 2 Enterprise Edition: Základní přehled.

Cvičení na počítači

12 hod., povinná

Vyučující / Lektor

Projekt

14 hod., povinná

Vyučující / Lektor

Osnova

  1. Domácí úkoly,
  2. projekt (malá aplikace s grafickým rozhraním v Javě).