PA165 Enterprise Applications in Java

Fakulta informatiky
jaro 2023
Rozsah
2/2/0. 3 kr. (plus ukončení). Doporučované ukončení: zk. Jiná možná ukončení: z.
Vyučující
Bruno Rossi, PhD (přednášející), prof. RNDr. Tomáš Pitner, Ph.D. (zástupce)
prof. RNDr. Tomáš Pitner, Ph.D. (přednášející)
RNDr. Martin Kuba, Ph.D. (přednášející)
Mgr. Martin Štefanko (přednášející)
RNDr. Ing. Pavel Šeda, Ph.D. (přednášející)
Mgr. Petr Beran (přednášející)
Bc. Norbert Bodnár (cvičící)
Ing. Michal Hazdra (cvičící)
Ing. Adam Radvan (cvičící)
Ing. Ivan Straka (přednášející)
Mgr. Jakub Bateľ (cvičící)
Radmila Čermáková (pomocník)
Garance
prof. RNDr. Tomáš Pitner, Ph.D.
Katedra počítačových systémů a komunikací – Fakulta informatiky
Kontaktní osoba: Bruno Rossi, PhD
Dodavatelské pracoviště: Katedra počítačových systémů a komunikací – Fakulta informatiky
Rozvrh
Út 14. 2. až Út 9. 5. Út 14:00–15:50 D2
  • Rozvrh seminárních/paralelních skupin:
PA165/01: St 15. 2. až St 10. 5. St 8:00–9:50 B130, P. Šeda
PA165/02: Čt 16. 2. až Čt 11. 5. Čt 16:00–17:50 B130, P. Beran, I. Straka
PA165/03: Čt 16. 2. až Čt 11. 5. Čt 8:00–9:50 B130, N. Bodnár, A. Radvan
PA165/04: Čt 16. 2. až Čt 11. 5. Čt 10:00–11:50 B130, M. Hazdra
PA165/05: St 15. 2. až St 10. 5. St 18:00–19:50 B130, J. Bateľ, B. Rossi
Předpoklady
Knowledge of Java at the level of PB162 and PV168 courses. Basic knowledge of databases is also expected.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Předmět si smí zapsat nejvýše 200 stud.
Momentální stav registrace a zápisu: zapsáno: 63/200, pouze zareg.: 0/200, pouze zareg. s předností (mateřské obory): 0/200
Mateřské obory/plány
Cíle předmětu
Students will understand selected chapters from advanced Java-based system design and implementation; they will be aware of methodological issues of high-quality program system design and implementation and related topics; they will be able to work with the most important APIs from Java SE and the Spring framework. Students will get acquainted with team work within large enterprise software development and with system design by applying enterprise patterns.
Výstupy z učení
Student will be able to:
- use advanced development tools for enterprise development in real life;
- apply design and implementation patterns for enterprise applications in own systems;
- write applications using persistence / ORM;
- handle the basic application security (authentication, authorization), be able to identify the basic types of attacks against the main IS;
- apply the Spring framework (AOP, dependency injection, security, transactions, Spring Boot);
- define APIs using the OpenAPI specification by defining REST controllers, using the Spring Boot framework;
- create and deploy microservices using the Spring Boot framework;
Osnova
  • Intro to large (enterprise) Java-based application and systems
  • Development tools (IntelliJ IDEA, Maven, Git)
  • Enterprise patterns (e.g., DTO, DAO)
  • Persistence/ORM (JPA/Hibernate)
  • Microservices (creation with Spring Boot, deployment in Docker, monitoring and tracing)
  • Security (OAuth 2, OpenID Connect, JWT)
  • Spring framework (AOP, dependency injection, security, transactions, Spring Boot)
  • REpresentational State Transfer (REST), OpenAPI
  • Continuous Integration / Deployment (GitLab Actions)
Literatura
    povinná literatura
  • Expert one-on-one J2EE development without EJB. Edited by Rod Johnson - Juergen Hoeller. Indianapolis, Ind.: Wiley Pub., 2004, xxiv, 552. ISBN 0764558315. info
  • ALUR, Deepak, Dan MALKS a John CRUPI. Core J2EE patterns : best practices and design strategies. 2nd ed. Upper Saddle River: Prentice Hall, 2003, xxx, 650. ISBN 0131422464. info
    doporučená literatura
  • BLOCH, Joshua. Effective Java. 2nd ed. Upper Saddle River, N.J.: Addison-Wesley, 2008, xxi, 346. ISBN 9780321356680. info
Výukové metody
lectures, practical seminars (computer lab sessions), group projects, group project presentations
Metody hodnocení
For a successful completion of the course, at least 70 points (out of 100) are required. The maximum total number of 100 points can be collected as follows: max 55 points for the project including its presentation, 35 for the written exam and 10 points for solving exercises during the seminars.
Vyučovací jazyk
Angličtina
Navazující předměty
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Nachází se v prerekvizitách jiných předmětů
Předmět je zařazen také v obdobích podzim 2004, podzim 2005, podzim 2006, podzim 2007, podzim 2008, podzim 2009, podzim 2010, podzim 2011, podzim 2012, podzim 2013, podzim 2014, podzim 2015, podzim 2016, podzim 2017, podzim 2018, jaro 2020, jaro 2021, jaro 2022, jaro 2024, jaro 2025.