University of Belgrade, Faculty of organizational sciences

Department for e-business

Serverske veb tehnologije

Cilj predmeta

Osnovni cilj predmeta je upoznavanje studenata sa principima projektovanja i razvoja veb aplikacija sa fokusom na serverske tehnologije, kao i praktično ovladavanje tehnologijama za back-end razvoj.

Ishod predmeta

Studenti stiču znanja i veštine vezane za projektovanje i razvoj serverske strane u veb aplikacijama i servisima.

Sadržaj predmeta

Teorijska nastava

Osnove razvoja serverske strane veb aplikacija. Кljučni principi i koncepti razvoja aplikacija u distribuiranom okruženju. Uloga serverskih tehnologija u savremenim arhitekturama veb sistema. Razmena podataka sa različitim slojevima veb aplikacije. RESTful arhitekture. Veb servisi. Кonektori i adapteri. Razvoj API-ja. Platforme za upravljanje API-jem. Uporedni pregled tehnologija serverske strane: PHP, Python, ASP, Java, JavaScript, NodeJS. Razvojni okviri. Primena razvojnih okvira u razvoju aplikacija i pregled aktuelnih rešenja. Upravljanje rutiranjem. ORM. Skladištenje i prenos podataka u veb okruženju. Кomparativna analiza koncepata i aktuelnih rešenja za upravljanje relacionim i nerelacionim bazama podataka. Serverske XML ekstenzije standardnih baza podataka. XML enabled baze podataka. Nativne XML baze. Hibridne XML baze. XML tehnologije. XPATH. XQUERY. DOM i manipulacija nad XML dokumentima. JSON format za serijalizaciju podataka. Servisno orijentisana arhitektura. Veb servisi. SOAP. REST. Procesno orijentisani razvoj softvera. Događaji i procesi. Кoordinacija i sinronizacija procesa. Aplikacioni serveri. Upravljanje sesijom i keširanjem. Optimizacija serverske strane veb aplikacija. Osnove zaštite veb aplikacija.

Praktična nastava

Uvod u serverske veb tehnologije i skriptne jezike. PHP. Osnovna sintaksa, promenljive, operatori, kontrola toka i iteracije, funkcije i ugrađene funkcije. PHP napredne funkcije za rukovanje kolačićima (cookies). PHP napredne funkcije za upravljanje sesijama. Кorišćenje sesija na primeru forme i veb prodavnice. Objektno orijentisano programiranje u PHP-u. Implementacija sloja podataka. PHP i rad sa bazama podataka. MySQL i CRUD operacije u PHP-u. Skladištenje i prenos podataka u veb okruženju. Dokument orijentisani modeli podataka. NoSQL i MongoDB. Skladištenje dinamičkih podataka. Asinhroni pozivi ka serveru i ažuriranje podataka u realnom vremenu. PHP, AJAX i MySQL. Sigurnost i bezbednost u PHP aplikacijama. XML tehnologije. Serverske XML ekstenzije standardnih baza podataka. XPATH. XQUERY. DOM i manipulacija nad XML dokumentima. JSON format za serijalizaciju podataka. Manipulacija JSON dokumentima. Veb servisi. Razvoj i dokumentacija sopstvenog REST servisa. Javni veb servisi. Aplikativni veb serveri. Implementacija poslovne logike. Razvoj veb aplikacija. PHP razvoj aplikacija sa MVC arhitekturom. Okviri za razvoj veb aplikacija: Symfony, Laravel, NodeJS.

Literatura

  1. Haverbeke, Eloquent JavaScript, No Starch Press, 2018
  2. Frain, Responsive Web Design with HTML5 and CSS: Develop future-proof responsive websites using the latest HTML5 and CSS techniques, 3rd Edition, Packt Publishing, 2020
  3. Материјали у е-форми, са портала за е-учење moodle.elab.fon.bg.ac.rs, 2021