460-2062/01 – Java Programming II (JAVA II)
Gurantor department | Department of Computer Science | Credits | 4 |
Subject guarantor | Ing. David Ježek, Ph.D. | Subject version guarantor | Ing. David Ježek, Ph.D. |
Study level | undergraduate or graduate | Requirement | Optional |
Year | 2 | Semester | summer |
| | Study language | Czech |
Year of introduction | 2019/2020 | Year of cancellation | |
Intended for the faculties | FEI | Intended for study types | Bachelor |
Subject aims expressed by acquired skills and competences
In Java, student is familiar with:
-a structure of an application and a library;
-settings of a virtual machine and a compilator;
-possibility to avoid serialization selected instance variables;
-a way how to inspect structure of classes with reflection;
-different kinds of annotations;
-XML processing with SAX and DOM;
-logging scenario – a logger configuration; logger gathering; levels of logging – DEBUG, INFO, WARN, ERROR; conditional logging;
-types classes for working with date and time;
-classes for concurrency control in the package java.util.concurrent;
-different kinds of security in Java – platform based, cipher, authentication and access control, secured communication.
In Java, student is able:
-to create application that distributable into the production environment;
-to create lambda expression and pass method as lambda expression;
-to divide packages into modules and create dependencies among modules;
-to export classes from modules;
-to pass parameters to applications – by command line, by environment variables and by system properties;
-to execute operations map, filter, sort and collect with streams;
-to perform CRUD operations on RBDMS by JDBC API;
-object serialization/deserialization to/from binary streams;
-to call methods on object with name using java reflection;
-to create own annotation, assign it to some element and get information during runtime;
-to process XML with DOM API;
-to log with log4j, logging and slf4j on selected level;
-to present time and date in format with and without time zone;
-to convert between date and time presentation of Java version bellow 1.8 and upper 1.8
-to ensure secure communication between processes;
-to manage certificates and secure key.
Teaching methods
Lectures
Tutorials
Experimental work in labs
Project work
Summary
Course follows course “Java programming I”. Students improve knowledge of Java and will be able to construct a software that is in conformance with production environment requirements. Course is possible to enrol after successful pass of "Java programming I".
Compulsory literature:
Recommended literature:
Additional study materials
Way of continuous check of knowledge in the course of semester
homework, tests, oral exam
The subject 460-2058/02 Programming in Java I is required as a prerequisite for subject 460-2062/02 Programmin in Java II.
E-learning
Other requirements
They are not required.
Java programming I
Prerequisities
Co-requisities
Subject has no co-requisities.
Subject syllabus:
Lectures:
1. Package and deployment – Maven usage. Platform specific launchers
2. Compilator and virtual machine settings. Properties passed to applications.
3. Lambda expressions. Streams.
4. Modules.
5. JDBC.
6. Serialization. Reflection and annotations.
7. XML and JSON processing.
8. Logging. Assertions. Application profiling.
9. Date and time processing.
10. Concurrency.
11. Security I.
12. Security II.
13. Internationalization.
Labs:
1. Package and deployment – Maven usage. Platform specific launchers
2. Compilator and virtual machine settings. Properties passed to applications.
3. Lambda expressions. Streams.
4. Modules.
5. JDBC.
6. Serialization. Reflection and annotations.
7. XML and JSON processing.
8. Logging. Assertions. Application profiling.
9. Date and time processing.
10. Concurrency.
11. Security I.
12. Security II.
13. Internationalization.
Conditions for subject completion
Occurrence in study plans
Occurrence in special blocks
Assessment of instruction