Návrh Školení

Zopakování

  • Dědičnost a rozhraní
  • Odkazy na objekty vs. dědičnost
  • Polymorfismus
  • Statické a výchozí metody rozhraní
  • Kolekce a generika
  • Generika (dědičnost, wilcardy)
  • Pišeme generické typy

Návrhové vzory

  • Vytváření objektů
  • Statické metody a pole
  • Operátor new
  • Vzory vytváření
  • Dědičnost vs. kompozice / výhody a nevýhody
  • Kompoziční vzor
  • Vnitřní třídy

Reflexe

  • Třída Class
  • Hledání polí, metod a konstruktorek
  • Přístup k polím, volání metod
  • Prozkoumávání pole

Anotace

  • Anotace v Java API (@Override, @Deprecated)
  • Vytváření anotací

Funkcionální programování

  • Přehled lambda vyjádření
  • Lambda vyjádření a funkční rozhraní
  • Využití lambda vyjádření
  • Práce s odkazy na metody

API pro proudy (Stream API)

  • Proud a kolekce
  • Filtrování kolekcí
  • Spojování a pipelining

API pro data a čas (Date/Time API)

  • Zastaralé API
  • API pro data a čas (JSR 310)
  • Datové a časové události
  • Časové razítky, obdoby a trvání
  • Výpočty s daty a časy
  • Formátování
  • Lokalizace / časové zóny

Základy JUnitu

  • Přehled JUnitu, testování ovládané požadavky (TDD)
  • Testy a tvrzení
  • Výjimky v testech
  • Seskupování testů pomocí JUnitu
  • Pišeme přípravu - @Before, @After
  • Testovací sady a další schopnosti
  • Přehled mock objektů

Nástroje pro build

  • Přehled Antu
  • Přehled Maven

Abstraktní třída

  • Zásady deklarace a implementace abstraktních tříd
  • Běžné problémy při práci s abstraktními třídami

Role tříd, abstraktních tříd a rozhraní v aplikaci

  • Hodnocení objektově orientované abstrakce v Javě
  • Kompletní objektový model v Javě
  • Programovací model zaměřený na rozhraní, abstraktní třídy a rozhraní pro flexibilitu a nezávislost jednotlivých podsystémů aplikace při jejich implementaci
  • Aplikace abstraktních tříd k extrahování společné funkce, která je dále rozšířena flexibilitou nabízenou rozhraními

Role statických a dynamických objektů v modelu aplikace

  • Statické třídy Java a dynamické vlastnosti těchto tříd
  • Rozlišování funkcí obojího typu entit v Javě a běžné použití, včetně příkladů osvědčených postupů v návrhu řešení založených na statických a dynamických objektech Java
  • Úvod do návrhových vzorů
  • Úvod k factory návrhovému vzoru

Operace s jednoduchými typy a wrapper třídami

  • Důležité fakta a techniky pro rozšíření použití jednoduchých typů v objektovém modelu Javy.
  • Problémy s rolemi wrapper tříd jednoduchých typů a běžné aplikace tohoto typu v aplikaci

Zvláštní objekty Java, třída String, StringBuilder a StringBuffer

  • Přehled základních vlastností třídy String a diskuse o zpracování String objektů virtuálním strojem
  • Využití buffer tříd a operace s řetězci

Formátování, parsování a regulární výrazy

  • Úvod do regulárních výrazů v Javě
  • Diskuse o základních i pokročilých technikách pro zpracování regulárních výrazů (třída String) a o technikách založených na specializovaných třídách pro tento typ konstrukce
  • Tokenizace, vyhledávání a shody vzorů pro řetězecové typy

Požadavky

  • Znalost jazyka Java a OOP. Účastníci musí znát balíčky, ovládací struktury a cykly, základní konkrétní třídy a základní rozhraní.

 21 hodiny

Počet účastníků


Cena za účastníka

Reference (5)

Nadcházející kurzy

Související kategorie