Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2022/2023

Java Technology

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
BIE-TJV.21 Z,ZK 5 2P+2C English
Lecturer:
Ondřej Guth (guarantor)
Tutor:
Ondřej Guth (guarantor)
Supervisor:
Department of Software Engineering
Synopsis:

The aim of the course is to provide knowledge and skills needed for the development of smaller and larger information systems. Students will get acquainted with general theoretical concepts and will be able to apply these concepts using libraries and tools from the ecosystem of the Java programming language. After completing the course students will be able to participate in the development of software systems on the Java platform. Students are assumed to be acquainted with the following topics (they are used and not taught in this course): Java language syntax, SQL, git version control system, Docker, continuous integration.

Requirements:

Entry knowledge: object-oriented programming, relational databases and SQL, git version control system, virtualization containers and Docker, and continuous integration. Knowledge of Java programming language is recommended.

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.

12. Submitting of semestral project.

13. Submitting of semestral project.

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/BIE-TJV
Time-table for winter semester 2022/2023:
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
roomTH:A-s135
Guth O.
14:30–16:00
(lecture parallel1)
Thákurova 7 (FSv-budova A)
As135
roomT9:351
Guth O.
16:15–17:45
(lecture parallel1
parallel nr.101)

Dejvice
NBFIT PC ucebna
roomT9:351
Guth O.
18:00–19:30
(lecture parallel1
parallel nr.102)

Dejvice
NBFIT PC ucebna
Time-table for summer semester 2022/2023:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2022-10-05
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/en/predmet6624706.html