Cilj predmeta
Osnovni cilj predmeta je upoznavanje studenata sa principima projektovanja i razvoja veb aplikacija i ovladavanje tehnologijama za razvoj klijentske strane veb aplikacija.
Ishod predmeta
Studenti su ovladali znanjima i veštinama projektovanja i razvoja klijentske strane veb aplikacija (front-end).
Sadržaj predmeta
Teorijska nastava
Osnove veb programiranja. Кljučni principi i koncepti. Osnove razvoja klijentske strane veb aplikacija. Problemi i zadaci prezentacionog, aplikacionog i sloja sesije referentnog OSI modela. Savremene arhitekture veb aplikacija i uloga klijentskih tehnologija. HTML5. CSS3. Razmena podataka sa različitim slojevima veb aplikacije. XML tehnologije za memorisanje, obradu i vizuelizaciju podataka prezentacionog sloja. JSON. JSON API. RESTful arhitekture. Skriptni jezici. Osnove JavaScript-a. ES6. DOM. JS biblioteke. jQuery. AJAX. Razvojni okviri. MVC. AngularJS. ReactJS. VueJS. Primena razvojnih okvira u razvoju aplikacija. Two-way data binding, upravljanje događajima, renderovanje podataka, komponente, dirketive, rad sa elementima DOM, Dependency Injection. Uvod u progressive web aplikacije (PWA). Analiza karakteristika veb brauzera i podrške za napredne funkcionalnosti aktuelnih klijentskih tehnologija. Pregled dobrih praksi u razvoju klijentske strane veb aplikacija. Testiranje i zaštita klijentske strane veb aplikacija. Uvod u arhitekture kompleksnih aplikacija elektronskog poslovanja. Tehnički i organizacioni aspekti integracije aplikacija, servisa i procesa. API. Uvod u veb servise. Uporedni pregled tehnologija za razvoj informacionih sistema u internet okruženju.
Praktična nastava
Tehnologije za memorisanje, obradu i prezentovanje podataka prezentacionog sloja. XML DOM. HTML5. CSS3. CSS preprocesori. Front-end okviri i biblioteke Bootstrap. Foundation. Semantic. Uvod u skriptne jezike. Osnove JavaScript jezika. Gramatika i tipovi. Кontrola toka. Petlje i iteracije. Funkcije, izrazi i operatori. Tekstualno formatiranje. Regularni izrazi. IIFE i anonimne funkcije. Strukture. Кolekcije. Objekti. Prototipno nasleđivanje. Modularni patern. JSON. JSON API. AJAX. Vizuelizacija. ChartJS. DataTables. JavaScript biblioteke. JQuery. Verzionisanje koda. Git. JavaScript kompajleri i upravljanje paketima. JavaScript okviri: Angular,VueJS,React.
Literatura
- Haverbeke, Eloquent JavaScript, No Starch Press, 2018
- 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
- Материјали у е-форми, са портала за е-учење moodle.elab.fon.bg.ac.rs, 2021