Kurs Data Access

Kurs Data Access obrađuje sve relevantne pristupe u radu sa podacima prilikom kreiranja klijentske logike modernih web aplikacija. Prve dve celine kursa upoznaju polaznike sa osnovnim formatima za predstavljanje podataka u tekstualnom obliku koji danas imaju primat na web-u: XML i JSON. Treća celina kursa posvećena je različitim oblicima komunikacije servera i klijenata koji omogućavaju da pregledači i web serveri međusobno razmenjuju podatke. Nakon različitih tehnika za komunikaciju sa serverom, kurs Data Access bavi se i različitim skladištima podataka unutar web pregledača.

Zanima vas ovaj kurs? Možete ga pohađati u okviru ovih ITAcademy programa: Frontend JavaScript Program.

Opis i cilj kursa Data Access

Prva celina kursa Data Access posvećena je jeziku XML. Polaznici će naučiti kako se kreira ispravno formiran i validan XML dokument, te kako se XML podaci parsiraju korišćenjem JavaScript jezika, a JavaScript objekti prevode u XML kod.

Drugi deo kursa Data Access posvećen je danas najpopularnijem tekstualnom formatu za predstavljanje podataka na webu. Reč je o formatu JSON. To je primarni format koji se danas koristi za razmenu podataka između delova web aplikacija, odnosno između prezentacionog sloja (frontend) i sloja pozadinske logike (backend). Polaznici se upoznaju sa strukturom i sintaksom JSON formata, a zatim i sa različitim pristupima za parsiranje i serijalizaciju JSON-a korišćenjem ugrađenih funkcionalnosti JavaScript jezika.

Treća celina kursa Data Access govori o različitim načinima za komunikaciju servera i klijenta. Obrađuju se svi relevantni pristupi komunikacije koji su na raspolaganju klijentskom delu web aplikacija. Tako treća celina kursa započinje najjednostavnijim pristupima koji podrazumevaju korišćenje formi i URL adresa. Nastavlja se upoznavanjem različitih kompleksnijih skupova funkcionalnosti, kao što su XMLHttpRequest API, Fetch API i WebSocket API. Na taj način se polaznici upoznaju sa AJAX programiranjem, koje klijentskom delu web aplikacija omogućava da, pored tradicionalnog pristupa, serverima upućuju zahteve u pozadini, korišćenjem JavaScripta, što kao efekat ima mogućnost parcijalnog ažuriranja sadržaja stranica.

Pored različitih mehanizama za slanje podataka serveru i dobijanje podataka od servera, prilikom razvoja web aplikacija veoma korisni su i različiti pristupi koji omogućavaju čuvanje podataka na klijentu. Stoga je poslednja, četvrta celina kursa Data Access posvećena različitim mehanizmima za čuvanje podataka na klijentu, unutar web pregledača. Obrađuju se kolačići, kao najstariji mehanizam takve vrste, ali i različiti napredniji i moderniji pristupi – Web Storage API (Local Storage i Session Storage skladišta) i IndexedDB.

Cilj kursa jeste osposobljavanje polaznika za rad sa podacima prilikom kreiranja klijentske logike web aplikacija. Polaznici se osposobljavaju za korišćenje podataka u XML i JSON formatu i za njihovu serijalizaciju i deserijalizaciju. Polaznici uče korišćenje različitih pristupa za komunikaciju sa serverom i za čuvanje podataka na klijentu, unutar web pregledača.

Kurs Data Access će vam odgovoriti na pitanja:

1. Šta je XML?

Priča o radu sa podacima kojima rukuju web aplikacije nikako ne može da prođe bez jednog posebnog jezika – XML-a. Zbog toga je prva celina kursa Data Access posvećena upoznavanju osobina XML jezika i njegovog korišćenja prilikom razvoja JavaScript aplikacija.

XML je skraćenica za eXtensible Markup Language. Reč je o jednom od najpoznatijih i najznačajnijih jezika koji se koriste za predstavljanje podataka u tekstualnom obliku na webu. XML je jezik za obeležavanje, odnosno markiranje, koji je po svojim osobinama veoma sličan osnovnom jeziku za kreiranje strukture web stranica – jeziku HTML. Iz XML-a su izvedeni i brojni drugi jezici: XHTML, WSDL, GPX, RSS, RDF, OWL, SMIL, XSLT... 

2. Šta je JSON?

Pored XML-a, frontend programiranje ne može se zamisliti bez još jednog pojma, koji na današnjem webu poseduje ogromnu važnost. Reč je o jednom formatu za predstavljanje podataka koji je specijalno razvijen za potrebe aplikacija koje koriste JavaScript jezik. 

Upravo zbog toga, spomenuti format nosi naziv JavaScript Object Notation ili skraćeno JSON. JSON je jednostavan, jezički nezavisan, tekstualni format za razmenu podataka. Reč je o primarnom formatu koji se danas koristi za razmenu podataka između delova web aplikacija, odnosno između prezentacionog sloja i pozadinske logike. Pojmu JSON posvećena je jedna kompletna celina kursa Data Access. Polaznici imaju prilike da se upoznaju sa strukturom i sintaksnim pravilima JSON-a, ali i sa ugrađenim funkcionalnostima JavaScrpt jezika, koje omogućavaju njegovo parsiranje i serijalizaciju.

3. Na koji način komuniciraju klijenti i serveri na webu?

Osnovna namena frontend programiranja jeste razvijanje prezentacionih delova web sajtova i aplikacija. Ipak, potpuno je jasno da pojam prezentacionog dela za sobom povlači i postojanje određene logike koja je u pozadini, skrivena od očiju korisnika i sa kojom korisnik ne može direktno da komunicira. Postojanje dve nezavisne komponente koje čine jednu celinu za sobom povlači neminovnost njihove komunikacije. Komunikacija se ogleda u razmeni poruka, odnosno podataka, poštovanjem protokola za komunikaciju.

Klijenti i serveri na webu komuniciraju poštovanjem pravila HTTP protokola, a takvu komunikaciju je sa klijentske strane moguće inicirati na brojne načine. Pored linkova i formi, frontend programerima je na raspolaganju skup funkcionalnosti koje se objedinjeno nazivaju AJAX. AJAX je skup različitih tehnologija koje omogućavaju da se korišćenjem programskog koda uputi HTTP zahtev serveru, bez potrebe za osvežavanjem kompletne stranice.

Kurs Data Access obrađuje nekoliko različitih načina za obavljanje takvog posla. Tako polaznici imaju prilike da se pre svih, upoznaju sa XMLHttpRequest i Fetch aplikativnim programskim interfejsima.

Polaznici kursa Data access

4. Šta je Long Polling?

Podrazumevani obrazac komunikacije na webu zasniva se na sekvencijalnom razmenjivanju zahteva i odgovora između servera i klijenata. Ipak, određeni scenariji rada sa podacima, zahtevaju i neke specifične modele komunikacije. Jedan od takvih modela ogleda se u postojanju perzistentne konekcije između klijenata i servera. Najjednostavniji način za postizanje perzistentne konekcije između servera i klijenta jeste realizovanje takozvanog Long Polling modela. Za Long Polling se kaže da je najjednostavniji zato što se realizuje korišćenjem HTTP protokola i XMLHttpRequest ili Fetch API-a za upućivanje zahteva. Kurs Data Access ilustruje korišćenje XMLHttpRequest i Fetch API-a za realizaciju Long Polling modela komunikacije, čime se postiže privid perzistentne povezanosti servera i klijenata.

5. Šta je WebSocket?

Priča o perzistentnoj konekciji između servera i klijenata ne može proći bez pojma WebSocket, kome je u kursu Data Access posvećena posebna pažnja. WebSocket je naziv koji se zapravo odnosi na dva pojma. Prvo, reč je o protokolu, koji je standardizovan od strane Internet Engineering Task Force (IETF) organizacije, a koji definiše pravila dvosmerne komunikacije između klijenata i servera. Dalje, WebSocket je takođe i jedan od web API-a, koji je moguće koristiti prilikom kreiranja frontend logike web aplikacija, koje zahtevaju perzistentnu konekciju sa serverom. Kurs Data Access polaznike prvo upoznaje sa osnovnim načelima WebSocket protokola, dok se zatim ilustruju najznačajniji pristupi za upošljavanje WebSocket protokola korišćenjem JavaScript jezika.

6. Šta su kolačići?

Pored različitih mehanizama za slanje i dobijanje podataka od servera, prilikom razvoja web aplikacija veoma korisni su i različiti pristupi koji omogućavaju čuvanje podataka na klijentu. Web pregledači obezbeđuju različite mehanizme za čuvanje podataka na klijentu. Jedan od najjednostavnijih zasniva se na upotrebi kolačića.

Kolačići (engl. cookies) su kratki tekstualni podaci koji se smeštaju direktno unutar web pregledača. Reč je o pojmu koji je definisan samim HTTP protokolom, odnosno kolačići su standardizovani RFC 6265 specifikacijom IETF organizacije.

U kursu Data Access prvo se govori o anatomiji kolačića, čime se polaznici upoznaju sa njihovom osnovnom strukturom i osobinama. Zatim se prelazi na upoznavanje različitih pristupa za kreiranje i konzumiranje kolačića, korišćenjem klijentske JavaScript logike.

7. Na koji način se podaci mogu čuvati unutar pregledača?

Web aplikacije veoma često imaju potrebu da unutar web pregledača sačuvaju određene podatke koji će se koristiti isključivo na klijentu. Zbog već spomenutih osobina, kolačići nisu pogodni za obavljanje takvog posla. Upravo zbog toga su vremenom proizvođači web pregledača razvili još neke mehanizme za čuvanje klijentski specifičnih podataka. 

Mehanizmi koji su direktna alternativa kolačićima nazivaju se Local Storage i Session Storage i oni omogućavaju čuvanje manje količine podataka u formi parova ključeva i vrednosti, direktno unutar web pregledača. Pored ovih skladišta, web pregledači poseduju i sistem koji omogućava efikasno čuvanje velike količine podataka na klijentu. Reč je o pojmu IndexedDB, odnosno bazi podataka web pregledača. Rad sa ovim tehnologijama detaljno je predstavljen u kursu Data Access.

Plan i program predavanja:

Modul 1: XML

  • Anatomija XML-a
  • Ispravno formiranje i validacija XML-a
  • XML i JavaScript

Modul 2: JSON

  • JSON
  • Parsiranje JSON-a
  • Serijalizacija JSON-a

Modul 3: Komunikacija sa serverom

  • HTTP Request/Response model
  • XMLHttpRequest
  • Fetch API
  • Long polling, WebSocket

Modul 4: Klijentska skladišta podataka

  • Cookies
  • Local storage, session storage
  • IndexedDB

Kurs Data Access

3 načina da dobijete odlično plaćen posao

Spremili smo dokument koji otkriva tri pouzdana načina za dolazak na dobro plaćenu poziciju za stručan rad sa računarima. Preuzmite izveštaj ovde.

Da li ima mesta? Upisni rok 2024/25. je otvoren.

Da saznate sve o upisu, kliknite ovde.

Prijavite se