Semester: 5
ECTS: 5
Lectures: 30
Practice sessions: 30
Independent work: 90
Module Code: 24-121-0131
Semester: 5
ECTS: 5
Lectures: 30
Practice sessions: 30
Independent work: 90
Module Code: 24-121-0131
Module title:
Selected topics of application programming support 2
Module overview:
This module introduces students to the advanced Java concepts of multithreading, concurrency, networking and reflection and promotes deeper understanding of the language itself.
This module is an optional module for Software Engineering subspecialisation, builds on Java 1 module from previous semester and provides students with skills and knowledge required for Java Web Programming module in the next semester. When chosen, this module will contribute significantly to students’ development as professionals in the respective fields.
The module is taught in Java. The module assessment is based on individual student projects. In these projects, students must create Java application to the given specifications.
Students will learn:
multithreading, concurrency, networking and reflection concepts and frameworks.
advanced means of Serialization process.
engine implementation for multiuser applications in network environment
object-relational mapping framework implementation
Literature:
Required readings:
1. Horstmann, C. (2022) Core Java Volume II - Advanced Features: 1. 12th edition. London: Pearson.
Supplementary readings:
1. Bloch, J. (2017) Effective Java. 3rd edn. Boston: Addison-Wesley Professional.
2. Evans, K.J. (2022) The Well-Grounded Java Developer, 2nd edition. Shelter Island: Manning Publications.