Programování v jazyce Java
Obsah
1.
Informace o průběhu, hodnocení, apod.
2.
O předmětu...
3.
Složky hodnocení předmětu
4.
Kritéria hodnocení předmětu
5.
Obsah (sylabus) předmětu
6.
Cvičení
7.
O přednášejícím...
8.
Konzultační hodiny
9.
Informační zdroje
10.
Úvod do jazyka Java
11.
Java jako programovací jazyk...
12.
Z toho plyne, že...
13.
Další charakteristiky
14.
Java jako běhové prostředí
15.
Java pro programátora (1)
16.
Java pro programátora (2)
17.
Hlavní domény Javy (1)
18.
Hlavní domény Javy (2)
19.
Javová platforma
20.
Java je tedy dána...
21.
Vývoj Javy
22.
Specifikace a implementace Javy
23.
Verze Javy
24.
Aktuální verze
25.
Získání distribuce Javy
26.
Stažení distribuce Sun
27.
Obsah vývojové distribuce Javy
28.
Obsah vývojové distribuce Javy (2)
29.
Nástroje ve vývojové distribuci
30.
Pomocné nástroje ve vývojové distribuci
31.
Základní životní cyklus javového programu
32.
Struktura javového programu
33.
Demo "Ahoj!"
34.
Překlad a spuštění "Ahoj!"
35.
Vytvoření zdrojového textu "Ahoj!" ("for dummies")
36.
Překlad "Ahoj!" ("for dummies")
37.
Spuštění "Ahoj!" ("for dummies")
38.
Co znamená spustit program?
39.
Praktické informace (aneb co je nutné udělat)
40.
Praktické informace (aneb co je vhodné udělat)
41.
Úloha do cvičení 1.
42.
Odkazy
43.
Úvod do objektového programování
44.
Co je třída a objekt?
45.
Vlastnosti objektu (1)
46.
Vlastnosti objektu (2)
47.
Příklad - deklarace třídy Clovek
48.
Příklad - použití třídy Clovek (1)
49.
Příklad - použití třídy Clovek (2)
50.
Proměnné - deklarace
51.
Proměnné - datový typ
52.
Proměnné - jmenné konvence
53.
Proměnné - použití
54.
Proměnné - modifikátory přístupu
55.
Proměnné - použití (2)
56.
Vytváření objektů
57.
Metody
58.
Metody - příklad
59.
Volání metod
60.
Volání metod - příklad
61.
Parametry metod
62.
Předávání skutečných parametrů metodám
63.
Příklad předávání parametrů - primitivní typy
64.
Příklad předávání parametrů - objektové typy (1)
65.
Příklad předávání parametrů - objektové typy (2)
66.
Návrat z metody
67.
Konstruktory
68.
Konstruktory (2)
69.
Přetěžování
70.
Přetěžování - příklad
71.
Přetěžování - příklad (2)
72.
Přetěžování - příklad (3)
73.
Shrnutí
74.
Odkazy na objekty
75.
Přiřazování objektových proměnných
76.
Vracení odkazu na sebe
77.
Řetězení volání
78.
Proměnné a metody třídy - statické
79.
Příklad statické proměnné a metody
80.
Úloha do cvičení 2.
81.
Objektové modelování v Javě
82.
Kroky řešení reálného problému na počítači
83.
Vývoj software je proces...
84.
Celkový rámec vývoje SW
85.
Metodiky vývoje SW
86.
Metodika typu "vodopád"
87.
Srovnání Java - Pascal
88.
Organizace programových souborů
89.
Organizace zdrojových souborů
90.
Příklad - svět chovatelů a jejich psů
91.
Shromáždění informací o realitě
92.
Jak zachytíme tyto informace
93.
Modelování reality pomocí tříd
94.
Zápis třídy do zdrojového souboru
95.
Organizace tříd do balíků
96.
Balíky
97.
Příslušnost třídy k balíku
98.
Dědičnost
99.
Terminologie dědičnosti
100.
Jak zapisujeme dědění
101.
Deklarace import NázevTřídy
102.
Deklarace import názevbalíku.*
103.
Opakování - vlastnosti tříd
104.
Příklad
105.
Příklad - co tam bylo nového
106.
Přístupová práva
107.
Granularita omezení přístupu
108.
Typy omezení přístupu
109.
Kde jsou která omezení aplikovatelná?
110.
Příklad - public
111.
Příklad - protected
112.
Příklad - přátelský
113.
Příklad - private
114.
Když si nevíte rady
115.
Přístupová práva a umístění deklarací do souborů
116.
Zadání úlohy 3. (zadává se v týdnu od 13. října)
117.
Příkazy a řídicí struktury v Javě
118.
Příkazy v Javě
119.
Přiřazení v Javě
120.
Přiřazení primitivní hodnoty
121.
Přiřazení odkazu na objekt
122.
Volání metody
123.
Návrat z metody
124.
Řízení toku programu v těle metody
125.
Cyklus s podmínkou na začátku
126.
Doporučení k psaní cyklů/větvení
127.
Příklad použití "while" cyklu
128.
Cyklus s podmínkou na konci
129.
Příklad použití "do-while" cyklu
130.
Cyklus "for"
131.
Příklad použití "for" cyklu
132.
Doporučení k psaní for cyklů
133.
Vícecestné větvení "switch - case - default"
134.
Vnořené větvení
135.
Vnořené větvení (2)
136.
Řetězené "if - else if - else"
137.
Příkazy "break"
138.
Příkaz "continue"
139.
"break" a "continue" s návěštím
140.
Doporučení k příkazům break a continue
141.
Zadání úlohy 4. (zadává se v týdnu od 20. října)
142.
Datové typy v Javě
143.
Primitivní vs. objektové datové typy - opakování
144.
Přiřazení proměnné primitivního typu - opakování
145.
Přiřazení objektové proměnné - opakování
146.
Primitivní datové typy
147.
Integrální typy - celočíselné
148.
Integrální typy - "char"
149.
Typ char - kódování
150.
Čísla s pohyblivou řádovou čárkou
151.
Vestavěné konstanty s pohyblivou řádovou čárkou
152.
Typ logických hodnot - boolean
153.
Typ void
154.
Pole v Javě
155.
Pole (2)
156.
Pole - co když deklarujeme, ale nevytvoříme?
157.
Pole - co když deklarujeme, vytvoříme, ale nenaplníme?
158.
Kopírování polí
159.
Objektové modelování v Javě - pokračování
160.
Rozhraní
161.
Co je rozhraní
162.
Deklarace rozhraní
163.
Implementace rozhraní
164.
Využití rozhraní
165.
Implementace více rozhraní současně
166.
Implementace více rozhraní současně - příklad
167.
Rozšiřování rozhraní
168.
Rozšiřování rozhraní - příklad
169.
Rozhraní - poznámky
170.
Abstraktní třídy
171.
Abstraktní třídy (2)
172.
Příklad rozhraní - abstraktní třída - neabstraktní třída
173.
Ladění a testování programů
174.
Ladění programů v Javě
175.
Ještě lepší...
176.
Postup při práci s assert
177.
Ukázka použití assert (1)
178.
Ukázka použití assert (2)
179.
Ukázka použití assert (3)
180.
Ukázka použití assert (4)
181.
Postup při práci s JUnit
182.
Ukázka použití JUnit (1)
183.
Ukázka použití JUnit (2)
184.
Ukázka použití JUnit (3)
185.
Ukázka použití JUnit (4)
186.
Postup při práci s jass
187.
Odkazy
188.
Zadání úlohy 5. (zadává se v týdnu od 3. listopadu)
189.
Operátory a výrazy, porovnávání objektů
190.
Aritmetické
191.
Logické
192.
Relační (porovnávací)
193.
Porovnávání objektů
194.
Porovnávání objektů - příklad
195.
Metoda hashCode
196.
Metoda hashCode - příklad
197.
Bitové
198.
Operátor podmíněného výrazu ? :
199.
Operátory typové konverze (přetypování)
200.
Operátor zřetězení +
201.
Priority operátorů a vytváření výrazů
202.
Kontejnery
203.
Kontejnery
204.
Základní kategorie kontejnerů
205.
Kontejnery - rozhraní, nepovinné metody
206.
Kontejnery - souběžný přístup, výjimky
207.
Iterátory
208.
Kolekce
209.
Seznamy
210.
Seznamy a obyčejné iterátory - příklad
211.
Iterátor po seznamu - příklad
212.
Množiny
213.
Množina - příklad
214.
Uspořádané množiny
215.
Uspořádaná množina - příklad s chybou
216.
Uspořádaná množina - příklad OK
217.
Mapy
218.
Mapa - příklad
219.
Uspořádané mapy
220.
Uspořádaná mapa - příklad
221.
Uspořádaná mapa - příklad s komparátorem
222.
Srovnání implementací kontejnerů
223.
Historie
224.
Odkazy
225.
Zadání úlohy 6. (zadává se v týdnu od 17. listopadu)
226.
Dokumentace a distribuce aplikací
227.
Dokumentace javových programů
228.
Typy komentářů
229.
Kde uvádíme dokumentační komentáře
230.
Generování dokumentace
231.
Značky javadoc
232.
Příklad zdrojového textu se značkami javadoc
233.
Spouštění javadoc
234.
Příklady
235.
Distribuce aplikací
236.
Spuštění jar
237.
Volby jar
238.
jar - příklad
239.
Rozšíření .jar archívů
240.
Tvorba spustitelných archívů
241.
Vytvoření spustitelného archívu - příklad
242.
Spuštění archívu - příklad
243.
Další příklad spuštění jar
244.
Výjimky
245.
Co a k čemu jsou výjimky
246.
Výjimky technicky
247.
Syntaxe kódu s ošetřením výjimek
248.
Syntaxe metody propouštějící výjimku
249.
Reakce na výjimku
250.
Kaskády výjimek
251.
Kategorizace výjimek a dalších chybových objektů
252.
Vlastní hierarchie výjimek
253.
Klauzule finally
254.
Odkazy
255.
Zadání úlohy 7. (zadává se v týdnu od 1. prosince)
256.
Vstupy a výstupy v Javě
257.
Koncepce vstupně/výstupních operací v Javě
258.
Práce se soubory
259.
Třída File
260.
Třída File (2)
261.
Třída File (3)
262.
Práce s adresáři
263.
Práce s binárními proudy
264.
Vstupní binární proudy
265.
Důležité neabstraktní třídy odvozené od InputStream
266.
Další vstupní proudy
267.
Práce se znakovými proudy
268.
Výstupní proudy
269.
Konverze: znakové <-> binární proudy
270.
Serializace objektů
271.
Odkazy
272.
Zadání úlohy 8. (zadává se v týdnu od 15. prosince)
273.
Událostmi řízené programování v Javě
274.
Komponenty GUI v Javě
275.
Událostmi řízené programování
276.
Řízení událostmi
277.
Kde to všechno je?
278.
Typy událostí vznikajících v GUI
279.
Přidání posluchače uálosti
280.
Příklad - událost zavření okna
281.
Totéž bez anonymity...
282.
Příklad
283.
Další odkazy
284.
Písemky
285.
První písemka
286.
Druhá písemka
287.
Třetí (zkoušková) písemka
2001-2003Tomáš Pitner