460-2062/01 – Programování v Java II (JAVA II)
Garantující katedra | Katedra informatiky | Kredity | 4 |
Garant předmětu | Ing. David Ježek, Ph.D. | Garant verze předmětu | Ing. David Ježek, Ph.D. |
Úroveň studia | pregraduální nebo graduální | Povinnost | volitelný odborný |
Ročník | 2 | Semestr | letní |
| | Jazyk výuky | čeština |
Rok zavedení | 2019/2020 | Rok zrušení | |
Určeno pro fakulty | FEI | Určeno pro typy studia | bakalářské |
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:
Doporučená literatura:
Další studijní materiály
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
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
Výskyt ve studijních plánech
Výskyt ve speciálních blocích
Hodnocení Výuky