Fakulta informačních technologií VUT v Brně

Detail předmětu

Seminář Java

IJA Ak. rok 2019/2020 letní semestr 4 kredity

Objektová orientace. Přehled vlastností jazyka Java. Objektový model, 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.

Garant předmětu

Kočí Radek, Ing., Ph.D. (UITS FIT VUT)

Zástupce garanta předmětu

Jazyk výuky

česky

Zakončení

zápočet (písemná)

Rozsah

26 hod. cvičení, 13 hod. projekty

Bodové hodnocení

100 projekty

Zajišťuje ústav

Přednášející

Kočí Radek, Ing., Ph.D. (UITS FIT VUT)

Cvičící

Kočí Radek, Ing., Ph.D. (UITS FIT VUT)

Získané dovednosti, znalosti a kompetence z 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ů.

Dovednosti, znalosti a kompetence obecné

Základy objektově orientovaného programování, znalost základních programovacích technik v Javě a návrhových vzorů.

Cíle předmětu

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

Proč je předmět vyučován

Současná praxe vyžaduje alespoň základní znalosti principů objektově orientovaného programování, programovacích technik a návrhových vzorů. Předmět probírá a cvičí uvedené aspekty na jazyku Java, který je v praxi rozšířeným jazykem pro tvorbu středně složitých až náročných aplikací.

Prerekvizity

Požadované prerekvizitní znalosti a dovednosti

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

Literatura studijní

Literatura referenční

  • Eckel, B.: Thinking in Java (4th Edition), 2006, ISBN: 978-0131872486 [starší edice dostupné elektronicky na WWW]
  • Cay S. Horstmann: Java SE8 for the Really Impatient: A Short Course on the Basics, Addison-Wesley Professional, 2014, ISBN-13: 978-0321927767
  • Joshua Bloch: Effective Java, Prentice Hall; 2 edition (May 28, 2008), ISBN-13: 978-0321356680

Osnova přednášek

  1. Úvod do jazyka Java: historie, nástroje, distribuce. Základní pojmy: objekt, třída, rozhraní, konstruktor.
  2. Datové typy. Deklarace třídy, modifikátory přístupu. Sestavení a spuštění aplikace, struktura aplikace (balíky), import tříd.
  3. Dědičnost, inicializace objektu, hierarchie dědičnosti (třída Object). Typová konverze. Assert.
  4. Abstraktní třída, rozhraní. Typová zaměnitelnost. Pole.
  5. Objektově orientovaný návrh a implementace v jazyce Java.
  6. Nástroje: generování dokumentace, Java Archive (JAR), Apache Ant, JUnit (ladění programu). Anotace.
  7. Výjimky. Vnořené třídy, výčtový typ, varargs. Lambda výrazy.
  8. Kontejnery: iterátor, kolekce, seznam, množina a mapa. Generické kontejnery. For-each loop, autoboxing.
  9. Vlákna (threads): plánování, sdílení, synchronizace.
  10. Grafické uživatelské rozhraní JFC/Swing. Vzory MVC, Observer a Command.
  11. Vstup/Výstup. Sokety. Proudové zpracování kolekcí.
  12. Java 8: rozhraní, generics. Zásady programování v Javě.
  13. JVM: zavádění tříd, správa paměti, garbage collector, profiling.

Osnova ostatní - projekty, práce

  1. domácí úkoly
  2. projekt (malá aplikace v Javě)

Kontrolovaná výuka

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

Podmínky zápočtu

  • Získat nejméně 1 bod z každého domácího úkolu.
  • Získat nejméně 50% bodů z projektu

Rozvrh

DenTypTýdnyMístn.OdDoPSKSkupInfo
Pocvičenívýuky D105 17:0019:50 2BIA 2BIB 3BIT xx

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

  • Program BIT, 2. ročník, povinně volitelný skupina T
  • Program IT-BC-3, obor BIT, 2. ročník, povinně volitelný skupina T
Nahoru