460-2062/01 – Java Programming II (JAVA II)

Gurantor departmentDepartment of Computer ScienceCredits4
Subject guarantorIng. Jan Kožusznik, Ph.D.Subject version guarantorIng. Jan Kožusznik, Ph.D.
Study levelundergraduate or graduateRequirementOptional
Year2Semestersummer
Study languageCzech
Year of introduction2019/2020Year of cancellation
Intended for the facultiesFEIIntended for study typesBachelor
Instruction secured by
LoginNameTuitorTeacher giving lectures
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.
Extent of instruction for forms of study
Form of studyWay of compl.Extent
Full-time Graded credit 2+2
Part-time Graded credit 18+0

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:

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.

Recommended literature:

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

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

Subject codeAbbreviationTitleRequirement
460-2058 JAVA I Java Programming I Compulsory

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

Full-time form (validity from: 2019/2020 Winter semester)
Task nameType of taskMax. number of points
(act. for subtasks)
Min. number of pointsMax. počet pokusů
Graded credit Graded credit 100 (100) 51 3
        Domácí úlohy Other task type 10  0
        Test praktických znalostí Written test 24  0
        Semestrální projekt Semestral project 40  0
        Zápočtový test Written examination 26  0
Mandatory attendence participation: Every student has to obtain at least the minimum number of points for each task.

Show history

Conditions for subject completion and attendance at the exercises within ISP: Completion of all mandatory tasks within individually agreed deadlines.

Show history

Occurrence in study plans

Academic yearProgrammeBranch/spec.Spec.ZaměřeníFormStudy language Tut. centreYearWSType of duty
2024/2025 (B0613A140014) Computer Science P Czech Ostrava 2 Choice-compulsory type B study plan
2024/2025 (B0613A140014) Computer Science K Czech Ostrava 2 Choice-compulsory type B study plan
2024/2025 (B0541A170008) Computational and Applied Mathematics P Czech Ostrava 2 Optional study plan
2024/2025 (B0541A170008) Computational and Applied Mathematics K Czech Ostrava 2 Optional study plan
2023/2024 (B0613A140014) Computer Science K Czech Ostrava 2 Choice-compulsory type B study plan
2023/2024 (B0613A140014) Computer Science P Czech Ostrava 2 Choice-compulsory type B study plan
2023/2024 (B0541A170008) Computational and Applied Mathematics P Czech Ostrava 2 Optional study plan
2023/2024 (B0541A170008) Computational and Applied Mathematics K Czech Ostrava 2 Optional study plan
2022/2023 (B0613A140014) Computer Science K Czech Ostrava 2 Choice-compulsory type B study plan
2022/2023 (B0613A140014) Computer Science P Czech Ostrava 2 Choice-compulsory type B study plan
2022/2023 (B0541A170008) Computational and Applied Mathematics K Czech Ostrava 2 Optional study plan
2022/2023 (B0541A170008) Computational and Applied Mathematics P Czech Ostrava 2 Optional study plan
2021/2022 (B0613A140014) Computer Science K Czech Ostrava 2 Choice-compulsory type B study plan
2021/2022 (B0613A140014) Computer Science P Czech Ostrava 2 Choice-compulsory type B study plan
2021/2022 (B0541A170008) Computational and Applied Mathematics P Czech Ostrava 2 Optional study plan
2021/2022 (B0541A170008) Computational and Applied Mathematics K Czech Ostrava 2 Optional study plan
2020/2021 (B0613A140014) Computer Science IJA K Czech Ostrava 2 Choice-compulsory type A study plan
2020/2021 (B0613A140014) Computer Science IJA P Czech Ostrava 2 Choice-compulsory type A study plan
2020/2021 (B0541A170008) Computational and Applied Mathematics P Czech Ostrava 2 Optional study plan
2020/2021 (B0541A170008) Computational and Applied Mathematics K Czech Ostrava 2 Optional study plan
2019/2020 (B0541A170008) Computational and Applied Mathematics P Czech Ostrava 2 Optional study plan
2019/2020 (B0541A170008) Computational and Applied Mathematics K Czech Ostrava 2 Optional study plan
2019/2020 (B0613A140014) Computer Science IJA P Czech Ostrava 2 Choice-compulsory type A study plan
2019/2020 (B0613A140014) Computer Science IJA K Czech Ostrava 2 Choice-compulsory type A study plan

Occurrence in special blocks

Block nameAcademic yearForm of studyStudy language YearWSType of blockBlock owner

Assessment of instruction



2022/2023 Summer
2021/2022 Summer
2020/2021 Summer