Podklady přednášek pro aktuální akademický rok 2021/2022. Podklady se skládají z promítaných slidů, které jsou také k dispozici ve zkrácených verzích šetřnějších k případnému tisku, bez přechodů mezi snímky a ve formátu čtyři snímky na stránku. K většině přednášek jsou k dispozici vide a komentovanými slidy. Tyto materiály nenahrazují přednášku, mohou být nedokonalé, zastaralé a nekompletní.
Poklady tvoří podpůrný materiál a jejich učelem není nahradit vlastní zápisky z přednášky, které slouží také jako prostředek osvojení si studované problematiky.
Týden | Datum | Přednáška |
---|---|---|
1 | 16.2.2022 | 01 - Úvod |
2 | 23.2.2022 | 02 - Objektově orientované programování |
3 | 2.3.2022 | 03 - Výčtové typy a kolekce v Javě, generické typy |
4 | 9.3.2022 | 04 - Výjimky a soubory |
5 | 16.3.2022 | 05 - GUI v Javě |
6 | 23.3.2022 | 06 - GUI v Javě, událostmi řízené programování |
7 | 30.3.2022 | 07, 08 - Vícevláknové aplikace 1, 2 |
8 | 6.4.2022 | Samostudium komentovaných prezentací k tématům 6, 7 a 8. |
9 | 13.4.2022 | 09 - Sokety a síťování |
10 | 20.4.2022 | 10 - Výkon a profilování |
11 | 27.4.2022 | 11 - Uklízení odpadků a analýza úniku |
12 | 4.5.2022 | Samostudium doplňujících materiálů |
13 | 11.5.2022 | Rektorský den |
14 | 18.5.2022 |
Organizace předmětu; programovací jazyk Java.
Úvod do objektově orientovaného modelování (analýzy a návrhu); objektově orientované programování (OOP); struktura objetu a zapouzdření.
Konstruktor, singleton, metoda main, immutable objekty.
— Aktualizace 2020/02/19 9:25
Objektově orientované programování. Immutable. Dědičnost, kompozice a polymorfismus. Dispatch a double dispatch.
— Aktualizace 2019/02/25 12:50 – úprava single-dispatch demonstračního příkladu
Výčtové typy, kolekce, iterátor, JFC. Generické typy.
— Aktualizace 2017/03/09 7:42
Výjimky. Soubory.
— Aktualizace 2020/03/25 8:45 - přidáno video s komentovanou prezentací
GUI v Javě, komponenty a kontejnery, dialogová okna (modalita).
— Aktualizace 2020/04/07 15:35 - přidáno video s komentovanou prezentací
GUI v Javě, Model-View-Controller, Event-Driven Programming, vnitřní třídy.
— Aktualizace 2020/04/10 17:02 - přidáno video s komentovanou prezentací
Paralelismus, synchronizace výpočetních toků, vícevláknové aplikace.
— Aktualizace 2020/04/21 21:55 - přidáno video s komentovanou prezentací
Vícevláknové aplikace - příklad GUI, vzor observer. Modely vícevláknových aplikací.
— Aktualizace 2020/04/28 20:30 - přidáno video s komentovanou prezentací
Síťování, síťová API - soket, jednoduchý klient a server, boss/worker server/klient.
— Aktualizace 2020/05/12 19:48 - přidáno video s komentovanou prezentací
— Aktualizace 2021/04/14 10:30 - přidány zjednodušené příklady
Výkon aplikace, profilování v NetBeans, příklady.
Správa paměti, Garbage Collection, Escape Analysis a alokace na stacku.
— Aktualizace 2019/09/05 11:22 - drobné opravy textu
Concurrency Concepts in Java by Douglas Hawkins
Java Performance Puzzlers 2018 - New by Douglas Hawkins