|
Vyučující
|
-
Herout Pavel, doc. Ing. Ph.D.
|
|
Obsah předmětu
|
1. Třídy a objekty v interaktivním režimu BlueJ, způsoby zasílání zpráv 2. Třída a její části, konstruktory, atributy, metody; rozhraní versus implementace; kontrakt 3. Návrhové vzory Knihovní třída, Statická tovární metoda, Jedináček, Přepravka, Výčtový typ 4. Rozhraní konstrukce a implementace, třída implementující více rozhraní 5. Datové typy, balíky, JAR soubory, hlavní třída a metoda main() 6. Dědičnost typů (implementace rozhraní) a skládání jako náhrada dědičnosti 7. Dědičnost implementace a spolupráce s nadtřídou; konečná třída, abstraktní třída 8. Knihovna kolekcí - Collection, Arrays, typová anonymita versus genericita 9. Knihovna kolekcí seznamy, množiny, mapy; návrhový vzor Iterátor 10. Polymorfismus, handlery, vnitřní a vnořené třídy 11. UML: diagram případů užití, diagram tříd - vztahy asociace, kompozice, agregace 12. Lambda výrazy, anotace 13. Pokročilé návrhové vzory: Stavitel, Abstraktní továrna, Kompozit, Dekorátor, Most, Příkaz
|
|
Studijní aktivity a metody výuky
|
Přednáška s praktickými aplikacemi, Samostatná práce studentů
- Příprava na zkoušku [10-60]
- 30 hodin za semestr
- Kontaktní výuka
- 52 hodin za semestr
- Projekt individuální [40]
- 30 hodin za semestr
|
| Předpoklady |
|---|
| Odborné znalosti |
|---|
| rozlišovat vhodnost použití celých a reálných čísel jako proměnných |
| vysvětlit pojmy proměnná, cyklus, podmínka |
| vysvětlit pojmy podprogram, funkce, procedura |
| rozlišovat pojmy editor, překladač, sestavovací program |
| rozlišovat zdrojový kód, přeložený kód, spustitelný program |
| Odborné dovednosti |
|---|
| používat rutinně nějaký editor |
| běžné práce s personálním počítačem, tj. umístění souborů na přesně definované místo a spuštění libovolného programu |
| vyhledávat základní informace ve zdrojích na Internetu |
| napsat jednoduchý program v libovolném programovacím jazyce |
| Obecné způsobilosti |
|---|
| bc. studium: efektivně využívá moderní informační technologie, |
| Výsledky učení |
|---|
| Odborné znalosti |
|---|
| vysvětlit pokročilé objektově orientovaného programování |
| znát netriviální objektové vlastnosti jazyka Java |
| vysvětlit principy vytváření dobrých objektových návrhů programů |
| orientace v základních návrhových vzorech |
| orientace v principech a některých diagramech jazyka UML |
| Odborné dovednosti |
|---|
| navrhnout a odladit program sestávající z více tříd |
| používat jednotkové testování |
| vytvořit detailní UML diagram tříd jako dokumentaci ke svému programu |
| programovat proti rozhraní |
| používat dynamické kontejnery v jazyce Java |
| používat IDE Eclipse nebo NetBeans |
| Obecné způsobilosti |
|---|
| bc. studium: samostatně získávají další odborné znalosti, dovednosti a způsobilosti na základě především praktické zkušenosti a jejího vyhodnocení, ale také samostatným studiem teoretických poznatků oboru, |
| Vyučovací metody |
|---|
| Odborné znalosti |
|---|
| Přednáška s aktivizací studentů, |
| Odborné dovednosti |
|---|
| Řešení problémů, |
| Analyticko-kritická práce s textem, |
| Obecné způsobilosti |
|---|
| Samostatná práce studentů, |
| Samostudium, |
| Hodnotící metody |
|---|
| Odborné znalosti |
|---|
| Kombinovaná zkouška, |
| Test, |
| Odborné dovednosti |
|---|
| Demonstrace dovedností (praktická činnost), |
| Průběžné hodnocení, |
| Obecné způsobilosti |
|---|
| Demonstrace dovedností (praktická činnost), |
|
Doporučená literatura
|
-
Eckel, Bruce. Thinking in Java. 4th ed. Upper saddle River : Prentice Hall, 2006. ISBN 0-13-187248-6.
-
Herout, Pavel. Java : bohatství knihoven. 1. vyd. České Budějovice : Kopp, 2003. ISBN 80-7232-209-5.
-
Herout, Pavel. Učebnice jazyka Java. České Budějovice : Kopp, 2000. ISBN 80-7232-115-3.
-
Pecinovský, Rudolf. Myslíme objektově v jazyku Java, 2. vydání. Praha, 2009. ISBN 978-80-247-2653-3.
-
Pecinovský, Rudolf. OOP ? Naučte se myslet a programovat objektově. Brno, 2010. ISBN 978-80-251-2126-9.
|