Hlavní stránka | Seznam oborů/specializací | Seznam všech skupin předmětů | Seznam všech předmětů | Seznam rolí                Návod

Předmět je základní jednotka výuky, jejímž prostřednictvím si student osvojí ucelenou část souboru znalostí a dovedností, potřebnou pro zvládnutí studijního oboru/specializace. Za věcný obsah předmětu zodpovídá garant předmětu. Časovou náročnost předmětu zhruba vyjadřuje atribut předmětu rozsah kontaktní výuky. Například rozsah = 2+2  značí, že předmět bude mít týdně dvě hodiny přednášek a dvě hodiny cvičení týdně. Na závěr semestru musí vyučující provést vyhodnocení, nakolik si ten který student osvojil poznatky a dovednosti, kterých měl během výuky nabýt. Jakým způsobem toto hodnocení vyučující provedou určuje atribut způsob zakončení. U předmětu lze definovat, že předmět je zakončen pouze zápočtem(Z), klasifikovaným zápočtem(KZ), pouze zkouškou(ZK), nebo zápočtem a zkouškou(Z,ZK). Náročnost úspěšného absolvování předmětu je vyjádřena ECTS kreditními body. Výuka předmětu probíhá během semestru. Opakovaně se předmět vyučuje vždy v zimním(Z), nebo v letním(L) semestru každého akademického roku. Výjimečně může předmět být nabízen studentům v obou semestrech(Z,L). Za organizační zajištění výuky zodpovídá přiřazená katedra, která zejména vytvoří časový rozvrh předmětu a zajistí pro předmět vyučující. Někteří přednáší a zkouší, jiní vedou cvičení a udělují zápočty.
Obsahová náplň a další organizační informace, týkající se předmětu je popsána pomocí různých popisných textů(anotace, týdenní osnova, literatura, apod.)
$DODATEK_POPIS
BIE-TJV.21 Java Technology Rozsah kontaktní výuky: 2P+2C
Vyučující: Guth O. Způsob zakončení: Z,ZK
Zodpovědná katedra: 18102 ECTS Kredity: 5 Semestr: Z

Anotace:
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.

Osnovy přednášek:
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.

Osnovy cvičení:
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.

Literatura:
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.

Požadavky:
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.

Information about the course and courseware are available at https://courses.fit.cvut.cz/BIE-TJV

Předmět je zahrnut do těchto studijních plánů:
Plán Obor Role Dop. semestr
BIE-PI.21 Computer Engineering 2021 V 3
BIE-PS.21 Computer Networks and Internet 2021 VO 3
BIE-IB.21 Information Security 2021 (Bachelor in English) V 3
BIE-SI.21 Software Engineering 2021 PS 3
BIE-TI.21 Computer Science 2021 V 3
BIE-PV.21 Computer Systems and Virtualization 2021 V 3


Stránka vytvořena 30. 4. 2024, semestry: L/2021-2, Z/2023-4, L/2022-3, L/2019-20, Z,L/2020-1, Z/2024-5, Z/2019-20, Z/2022-3, L/2023-4, Z/2021-2, připomínky k informační náplni zasílejte správci studijních plánů Návrh a realizace: J. Novák, I. Halaška