Predmet | Napredne Java tehnologije |
---|---|
Modul | Informacioni sistemi i tehnologije |
Status predmeta | Izborni predmet |
Katedra | Katedra za softversko inženjerstvo |
Broj ESPB bodova | 5 |
Sticanje znanja o naprednim Java tehnologijama koje se koriste u razvoju veb aplikacija. Izrada Java veb aplikacija korišćenjem različitih Java tehnologija (okvira i biblioteka).
Osposobljavanje studenata za samostalno projektovanje i implementaciju robusnih i modularnih Java veb aplikacija primenom različitih softverskih tehnologija.
•Profesor će teorijski objasniti svaku od razmatranih tematskih jedinica i kroz praktične primere će objasniti njihovu primenu u razvoju složenih softverskih sistema.
•Asistenti će kroz laboratorijske vežbe da razrađuju tematske jedinice koje je profesor predavao. Za svaku tematsku jedinicu asistenti će pripremiti konkretne primere koje će prikazati i objasniti studentima u računskom centru
•Studenti treba da samostalno urade zadatke, koje će pripremiti asistenti, iz većine razmatraniht ematskih jedinica .
Teorijska nastava
Uvod. Definisanje osnovnih pojmova.Java tehnologije za razvoj veb aplikacije. Servleti (Servlet). Java server strane (Java Server Pages). Standardne biblioteke tagova. Arhitekture veb aplikacije. Okviri za razvoj veb aplikacija. Tehnologije za pristup skladištima podataka. Objektno relaciono preslikavanje. Upravljanje transakcijama i keširanje. Projektovanje srednjeg sloja. Okviri za integraciju. Veb korisnički interfejs. Okviri za razvoj veb korisničkog interfejsa. Osnove zaštite Java veb aplikacije.
Praktična nastava
Razvoj Java veb aplikacije primenom Servelet i JSP tehnologije. Primena standardnih biblioteka tagova u razvoju korisničkog interfejsa u Javi. Kreiranje sopstvene biblioteke tagova. Primena boostrap i javascript biblioteka. Primena Model View Controller u razvoju Java veb aplikacija (Spring MVC). Primena Inversion of control/ Dependency injection u razvoju Java veb aplikacije. Java tehnologije za pristup skladištima podataka (ORM, JPA, Spring ORM, Spring JDBC, Spring Data). Projektovanje srednjeg sloja Java veb aplikacije (Spring okvir/EJB). Projektovanje korisničkog interfejsa (JSP, JSTL, Spring tagovi, projektovanje sopstevnih tagova). Okviri za razvoj korisničkog integejsa (Angular/React/…). Autentifikacija i autorizacija. Alati za verzionisanje programskog koda. Alati za verzionisanje relacione baze podataka (Liquibase, Flyway). Alati za automatizaciju razvoja softvera.
- Joel Murach, Michael Urban Java Servlets and JSP, 3rd edition Mike Murach& Associates 2014
- Iuliana Cosmina, Rob Harrop, Chris Schaefer, Clarence Ho , Pro Spring 5 An In-Depth Guide to the Spring Framework and Its Tools, 5th Edition Apress 2017
- Craig Walls Spring in Action, Fifth Edition Manning Publication 2018
- Dinesh Rajput Spring 5 Design Patterns Packt Publishing 2017
- Siniša Vlajić, Dušan Savić,Vojislav Stanojević, Ilija Antović, Miloš Milić Projektovanje softvera – napredne Java tehnologije Zlatni presek, https://www.researchgate.net/p ublication/303858129_Projektov anje_softvera_- Napredne_Java_tehnologije_S oftware_design– _Advanced_Java_Technologies , Beograd 2008
- Siniša Vlajić, Ćirić Vidojko i Dušan Savić Projektovanje programa (Praktikum – programski jezik JAVA) http://silab.fon.bg.ac.rs/wpcontent/uploads/2016/05/Osnov niKonceptiJaveProjektovanjeSoftvera.pdf , Beograd 2003