460-2062/01 – Programování v Java II (JAVA II)

Garantující katedraKatedra informatikyKredity4
Garant předmětuIng. Jan Kožusznik, Ph.D.Garant verze předmětuIng. Jan Kožusznik, Ph.D.
Úroveň studiapregraduální nebo graduálníPovinnostvolitelný odborný
Ročník2Semestrletní
Jazyk výukyčeština
Rok zavedení2019/2020Rok zrušení
Určeno pro fakultyFEIUrčeno pro typy studiabakalářské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
HAN0261 Ing. Marek Hanuš
JEZ04 Ing. David Ježek, Ph.D.
KOZ01 Ing. Jan Kožusznik, Ph.D.
VAS218 Ing. Michal Vašinek, Ph.D.
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Klasifikovaný zápočet 2+2
kombinovaná Klasifikovaný zápočet 18+0

Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi

Student v Javě důvěrně zná: -strukturu aplikace a knihovny; -možnosti nastavení kompilátoru, virtuálního stroje; -možnost zabránění serializace vybraných instančních proměnných; -možnost prozkoumání struktury tříd prostřednictvím reflekce; -různé typy anotací; -pro práci s XML soubory přístupy SAX a DOM; -scénář logování – konfigurace loggeru, získání loggeru, úrovně logování – DEBUG, INFO, WARN, ERROR; podmínění logování; -typy tříd a operací pro práci s datem a časem; -třídy pro řízení souběhu v balíku java.util.concurrent; -různé úrovně bezpečnosti v Javě – na úrovni platformy, prostředky šifrování, autentizace a řízení přístupu, zabezpečené komunikace. Student je v Javě schopen: -vytvořit aplikaci, která je distribuovatelná do produkčního prostředí; -vytvořit lambda výraz a předat metodu jako lambda výraz; -rozdělit balíky do modulů a je schopen vytvořit mezi moduly závislosti; -exportovat třídy z modulů; -předat parametry aplikacím přes příkazovou řádku, přes parametry prostředí a přes systémové vlastnosti; -provést operace mapování, filtrace, třídění a agregace nad kolekcemi pomocí streamů; -provádět CRUD operace nad relačními databázemi pomocí JDBC API; -serializovat/deserializovat objekty do/z binárních souborů; -zavolat metody na objekt pouze názvem skrze reflekce; -vytvořit vlastní anotaci, přiřadit ji nějakému elementu a za běhu z ní získat informaci; -načíst XML soubor prostřednictvím rozhraní DOM; -loggovat na vybrané úrovni pomocí log4j, logging a slf4j; -reprezentovat datum a čas ve formátu bez i s časovou zónou; s intervaly; -převádět mezi reprezentací času do Java 1.8 a od 1.8; -zajistit bezpečnou komunikaci mezi různými procesy; -udržovat certifikáty a bezpečnostní klíče.

Vyučovací metody

Přednášky
Cvičení (v učebně)
Experimentální práce v laboratoři
Projekt

Anotace

Kurz navazuje na kurz “Programování v Java I”. Studenti se prohloubí znalosti Java a budou schopni vyvíjet software, který vyhovuje požadavků na produkční provoz. Předmět je možno absolvovat po úspěšném zvládnutí "Programování v Java I"

Povinná literatura:

SCHILDT, Herbert, 2017b. Java: The Complete Reference, Tenth Edition. 10 edition. New York: McGraw-Hill Education. ISBN 978-1-259-58933-1. Oracle.The Java™ Tutorials. accessed September 21, 2016, http://docs.oracle.com/javase/tutorial/index.html.

Doporučená literatura:

SCHILDT, Herbert, 2017. Java: A Beginner’s Guide, Seventh Edition. 7 edition. New York: McGraw-Hill Education. ISBN 978-1-259-58931-7. KOŽUSZNIK, Jan. Programming language 1. Opory k předmětu vzniklé v rámci projektu InterDV. Bruce Eckel: Thinking in Java, ISBN: 978-0131872486 Joshua Bloch: Effective Java, ISBN: 978-0321356680

Forma způsobu ověření studijních výsledků a další požadavky na studenta

domácí úkoly, testy, ústní zkoušení Předmět 460-2062/01 Programování v Java II má jako povinnou prerekvizitu předmět 460-2058/01 Programování v Java I.

E-learning

Další požadavky na studenta

Další požadavky na studenta nejsou kladeny. Programování v Java I

Prerekvizity

Kód předmětuZkratkaNázevPovinnost
460-2058 JAVA I Programování v Java I Povinná

Korekvizity

Předmět nemá žádné korekvizity.

Osnova předmětu

Přednášky: 1. Balení a nasazení aplikací – využití Maven. Platformě specifické spouštěče. 2. Nastavení kompilátoru, virtuálního stroje. Vlastnosti předávané aplikacím. 3. Lambda výrazy. Streamy. 4. Moduly. 5. Přístup k relační databázi. 6. Serializace. Reflexe a anotace. 7. Zpracování XML a JSON. 8. Logování. „Předpoklady“. Profilování aplikací. 9. Práce s datem a časem. 10. Souběh. 11. Bezpečnost I. 12. Bezpečnost II. 13. Internacionalizace. Cvičení: 1. Balení a nasazení aplikací – využití Maven. Platformě specifické spouštěče. 2. Nastavení kompilátoru, virtuálního stroje. Vlastnosti předávané aplikacím. 3. Lambda výrazy. Streamy. 4. Moduly. 5. Přístup k relační databázi. 6. Serializace. Reflexe a anotace. 7. Zpracování XML a JSON. 8. Logování. „Předpoklady“. Profilování aplikací. 9. Práce s datem a časem. 10. Souběh. 11. Bezpečnost I. 12. Bezpečnost II. 13. Internacionalizace.

Podmínky absolvování předmětu

Prezenční forma (platnost od: 2019/2020 zimní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodůMax. počet pokusů
Klasifikovaný zápočet Klasifikovaný zápočet 100 (100) 51 3
        Domácí úlohy Jiný typ úlohy 10  0
        Test praktických znalostí Písemka 24  0
        Semestrální projekt Semestrální projekt 40  0
        Zápočtový test Písemná zkouška 26  0
Rozsah povinné účasti: Student musí splnit všechny definované úlohy alespoň za minimální počet bodů.

Zobrazit historii

Podmínky absolvování předmětu a účast na cvičeních v rámci ISP: Splnění všech povinných úkolů v individuálně dohodnutých termínech.

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramObor/spec.Spec.ZaměřeníFormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2024/2025 (B0613A140014) Informatika P čeština Ostrava 2 povinně volitelný typu B stu. plán
2024/2025 (B0613A140014) Informatika K čeština Ostrava 2 povinně volitelný typu B stu. plán
2024/2025 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 2 volitelný odborný stu. plán
2024/2025 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 2 volitelný odborný stu. plán
2023/2024 (B0613A140014) Informatika K čeština Ostrava 2 povinně volitelný typu B stu. plán
2023/2024 (B0613A140014) Informatika P čeština Ostrava 2 povinně volitelný typu B stu. plán
2023/2024 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 2 volitelný odborný stu. plán
2023/2024 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 2 volitelný odborný stu. plán
2022/2023 (B0613A140014) Informatika K čeština Ostrava 2 povinně volitelný typu B stu. plán
2022/2023 (B0613A140014) Informatika P čeština Ostrava 2 povinně volitelný typu B stu. plán
2022/2023 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 2 volitelný odborný stu. plán
2022/2023 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B0613A140014) Informatika K čeština Ostrava 2 povinně volitelný typu B stu. plán
2021/2022 (B0613A140014) Informatika P čeština Ostrava 2 povinně volitelný typu B stu. plán
2021/2022 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B0613A140014) Informatika IJA K čeština Ostrava 2 povinně volitelný typu A stu. plán
2020/2021 (B0613A140014) Informatika IJA P čeština Ostrava 2 povinně volitelný typu A stu. plán
2020/2021 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B0613A140014) Informatika IJA P čeština Ostrava 2 povinně volitelný typu A stu. plán
2019/2020 (B0613A140014) Informatika IJA K čeština Ostrava 2 povinně volitelný typu A stu. plán

Výskyt ve speciálních blocích

Název blokuAkademický rokForma studiaJazyk výuky RočníkZLTyp blokuVlastník bloku

Hodnocení Výuky



2022/2023 letní
2021/2022 letní
2020/2021 letní