Java Technology
Code | Completion | Credits | Range | Language |
---|---|---|---|---|
BI-TJV.21 | Z,ZK | 5 | 2P+2C | Czech |
- Garant předmětu:
- Lecturer:
- Jan Blizničenko, Jiří Daněček, Stanislav Kuznetsov
- Tutor:
- Jan Blizničenko, Jiří Daněček, Stanislav Kuznetsov, Raian Samerkhanov
- Supervisor:
- Department of Software Engineering
- Synopsis:
-
The goal is to provide knowledge and skills for developing information systems and applications through concepts used in software development and experience with libraries and tools from Java language ecosystem. At the course end, the students are able to develop software systems in Java platform.
- Requirements:
-
Entry knowledge: Knowledge of object-oriented programming. Knowledge of Java programming language is recommended. However, it is not required.
- Syllabus of lectures:
-
1. Software applications, typical layers used in design and implementation of SW applications.
2. Application frameworks. Principles of Inversion of control and of Dependency Injection used in creation of object-based applications.
3. Build of SW applications.
4. Automatic testing of SW applications.
5. Data layer. Use of relational databases, object-oriented mapping.
6. Web layer of SW applications, web container/server.
7. Handling of RESTful web services, protocol HTTP.
8. SOAP web services.
9. Logging of SW applications.
10. Security of SW applications, authentication and authorization in SW applications.
11. Application servers and their utilization, the JavaEE/JakartaEE specification, Enterprise Java Beans (EJB).
12. Architectures of SW applications.
13. Microservices and the concept of SE applications based on microservices.
- Syllabus of tutorials:
-
1. Programming in Java IDE.
2. Spring inversion of control and dependency injection, annotations.
3. Spring Boot.
4. Build tools (Gradle, Maven).
5. JUnit.
6. Spring ORM, transactions.
7. Web layer.
8. RESTful web service.
9. RESTful API client.
10. Logging.
11. Spring security.
- Study Objective:
- Study materials:
-
1. de Oliveira C. E., Rajput D., Rajesh R. V. : BI-PJP. Packt Publishing, 2018. ISBN 978-1789959666.
2. Enriquez R., Salazar A. : Software Architecture with Spring 5.0: Design and architect highly scalable, robust, and high-performance Java applications. Packt Publishing, 2018. ISBN 978-1788992992.
3. Urma R. G., Fusco M., Mycroft A. : Modern Java in Action: Lambdas, streams, functional and reactive programming (2nd Edition). Manning Publications, 2018. ISBN 978 1617293566.
4. Mahajan A., Gupta M. K., Sundar S. : Cloud-Native Applications in Java: Build microservice-based cloud-native applications that dynamically scale. Packt Publishing, 2017. ISBN 978-1787124349.
- Note:
- Further information:
- https://courses.fit.cvut.cz/BI-TJV/
- Time-table for winter semester 2024/2025:
-
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Mon Tue Wed Thu Fri - Time-table for summer semester 2024/2025:
- Time-table is not available yet
- The course is a part of the following study plans:
-
- Bachelor Specialization Information Security, in Czech, 2021 (elective course)
- Bachelor Specialization Management Informatics, in Czech, 2021 (elective course)
- Bachelor Specialization Computer Graphics, in Czech, 2021 (elective course)
- Bachelor Specialization Computer Engineering, in Czech, 2021 (elective course)
- Bachelor program, unspecified specialization, in Czech, 2021 (VO)
- Bachelor Specialization Web Engineering, in Czech, 2021 (elective course)
- Bachelor Specialization Artificial Intelligence, in Czech, 2021 (elective course)
- Bachelor Specialization Computer Science, in Czech, 2021 (elective course)
- Bachelor Specialization Software Engineering, in Czech, 2021 (PS)
- Bachelor Specialization Computer Systems and Virtualization, in Czech, 2021 (elective course)
- Bachelor Specialization Computer Networks and Internet, in Czech, 2021 (elective course)
- Bachelor Specialization Information Security, in Czech, 2024 (elective course)
- Bachelor program, unspecified specialization, in Czech, 2024 (VO)
- Bachelor Specialization Management Informatics, in Czech, 2024 (elective course)
- Bachelor Specialization Computer Graphics, in Czech, 2024 (elective course)
- Bachelor Specialization Software Engineering, in Czech, 2024 (PS)
- Bachelor Specialization Web Engineering, in Czech, 2024 (elective course)
- Bachelor Specialization Computer Networks and Internet, in Czech, 2024 (elective course)
- Bachelor Specialization Computer Engineering, in Czech, 2024 (elective course)
- Bachelor Specialization Computer Systems and Virtualization, in Czech, 2024 (elective course)
- Bachelor Specialization Artificial Intelligence, in Czech, 2024 (elective course)
- Bachelor Specialization Computer Science, in Czech, 20214 (elective course)