Internet Tehnologije - Pismeni PDF

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 18

INTERNET TEHNOLOGIJE

Priprema za pismeni deo ispita


1. ta je XML?

XML (eXtensible Markup Language) je jezik za kreiranje struktuiranih dokumenata


razvijen za rad sa podacima, pri emu se najvie koristi u okviru Web aplikacija. XML je u
svojoj osnovi informacija o informaciji zapisana u tekstualnom obliku. Skup tagova nije
unapred definisan (odatle eXtensible u nazivu XML-a). Razlog za njegovo kreiranje je
internet koji spaja milione raunara. Informacije treba da budu itljive na svakom od njih bez
obzira na tip raunara i operativnog sistema koji se na njemu nalazi. XML, poto predstavlja
tekstualni format, moe biti proitan na bilo kom raunaru, po odgovara prethodnim
zahtevima.

Primer XML-a:

<student tip="redovni">
<ime>Nikola</ime>
<prezime>Nikolic</prezime>
<prosek/>
</student>

U prethodnom primeru vorovi su: student, ime, prezime i prosek. vor student ima
atribut tip ija je vrednost redovni. Vrednost vora ime je Nikola a vora prezime Nikolic.

2. ta je DTD?

DTD (Document Type Definition) predstavlja tip fajla koji definie kako aplikacije
koje koriste dokument treba da interpretiraju simbolike oznake. On je sastavni deo
dokumenta, mada se moe nalaziti i kao poseban fajl.

Primer DTD-a:

<?xml version="1.0" standalone="yes"?>


<!DOCTYPE GREETING [
<!ELEMENT GREETING (#PCDATA)>
]>
<GREETING>
Hello XML!
</GREETING>

DTD dokument u sebi moe da sadri: opise elemenata, modele sadraja, opise liste
atributa i opise entiteta.

1
3. Objasni opise elemenata i modele sadraja u okviru DTD-a.

Elementi predstavljaju logike strukture u okviru dokumenata i osnov su svakog


XML-a. Oni se definiu na sledei nain:

<!ELEMENT nazivElementa >


npr:
<!ELEMENT Student >
<!ELEMENT Profesor >

Model sadraja opisuje vrstu sadraja koja se moe nalaziti unutar elementa. Postoji
etiri tipa sadraja koji se mogu nai unutar elemenata. To su: sadraja podataka (sadri
obine tekstualne podatke i opisuje se sa #PCDATA), sadraj elemenata (sadri druge
elemente), meoviti sadraj (sadri i tekstualne podatke i elemente) i bilo koji sadraj (moe
sadrati bolo ta to je definisano u okviru DTD-a). Model sadraja se definie na sledei
nain:

<!ELEMENT nazivElementa (modelSadrzaja) >

Primer elementa koji sadri tekstualne podatke:


<!ELEMENT ime_studenta (#PCDATA)>

Primer elementa koji sadri druge elemente.


<!ELEMENT student (ime_studenta, prezime_studenta)>

U prethodnom primeru element student moe da sadri samo pod elemente


ime_studenta i prezime_studenta, i to po tano jedan ovakav elemenat. Takoe, nije
dozvoljeno ni menjati redosled elemenata.

<!ELEMENT student (ime_studenta, prezime_studenta, prosek?)>

? - doputen je nijedan ili jedan element


* - doputen je nijedan ili vie elemenata
+ - doputen je jedan ili vie elemenata

2
4. Objasni liste atributa u okviru DTD-a.

Pomou liste atributa se definie skup atributa za odreeni element. Svaki opis liste
atributa se sastoji od naziva tributa, dozvoljene vrste vrednosti atributa i oznake tipa atributa.
Primer definisanja liste atributa:

<!ATTLIST nazivElementa nazivAtributa vrstaVrednosti kategorijaAtributa >

Postoje etiri razliite vrste vrednosti atributa:


CDATA - obian tekst,
ID - dodeljuje jedinstvenu oznaku elementu,
(vred | vred | ... | vred) - predefinisana lista vrednosti,
ENTITY ne tekstualni entitet.

XML atributi se mogu grupisati u tri kategorije:


#REQUIRED - zahtevani atributi se moraju pojaviti svaki put u okviru elementa
#FIXED - fiksni atributi imaju konstantnu vrednost
#IMPLIED - podrazumevani atributi se ne moraju uvek pojaviti i nemaju konstantnu
vrednost

<!ATTLIST student ime_studenta CDATA #REQUIRED


prezime_studenta CDATA #REQUIRED
prosek CDATA #IMPLIED >

<student ime_studenta="Nikola", prezime_studenta="Nikolic", prosek="9.2" />

5. Objasni entitete u okviru DTD-a

Entiteti predstavljaju virtuelne jedinice za smetanje podataka. Svaka datoteka, niz


znakova ili neki drugi resurs koji moe biti ugraen u XML predstavlja entitet. Prema tipu
sadraja moemo ih podeliti na:
Tekstualne entitete - sadre esto koriene fraze, stringove ili itave tekstove
Binarne entitete - sadre sve vrste podataka sem teksta
Znakovne i numerike entitete - omoguavaju opis ne ASCI karaktera
Parametarske entitete - vrsta entiteta koja je rezervisana samo za korienje u DTD-u

Primer entiteta:

<!ENTITY NazivFakulteta "Tehnicki fakultet Mihajlo Pupin" >

Nakon ove linije, gde god u dokumentu treba da se ispie ime fakulteta koristi se
entitet &NazivFakulteta.

3
6. ta je XSLT?

XSLT (eXtensible Stylesheet Language Transformations) predstavlja opisni jezik


baziran na XML-u koji slui za transformaciju XML dokumenata u druge XML dokumente
ili dokumente drugih formata koji se mogu prikazivati u Web pretraivaima. Svi noviji
pretraivai imaju u sebi ugraen XSLT. XML dokument je mogue konvertovati u sledee
formate:
HTML
XHTML
PDF
Text
...

Prilikom transformacije se koriste izvorni XML dokument, XSLT stylesheet


dokument, XSLT procesor i rezultujui dokument. XSLT procesor , koji je implementiran u
Web pretraivau, vri transformaciju izvornog XML dokumenta pomou XSLT stylesheet
dokumenta, dajui na izlazu rezultujui dokument.
Pomou XSLT-a moemo:
dodavati nove elemente u izlazni dokument
ukloniti elemente iz izlaznog dokumenta
premetati elemente u dokumentu
sortirati elemente u dokumentu
birati koje emo elemente prikazati, a koje sakriti
vriti odreene transformacije, formatiranje...

7. ta je RSS feed?

RSS (Really Simple Syndication stvarno jednostavne vesti) oznaava protokol za


prenos podataka pomou interneta. RSS feed-ovi ne koriste HTML jezik pa se za prikaz
sadraja ne mogu koristiti internet pretraivai (Chrome, Firefox, ...). Korisnici primaju
sadraj iskljuivo ako su se pretplatili na njega. RSS predstavlja jednostavan nain za
automatsko preuzimanje informacija sa Web lokacija. Pretplatom na njega, korisnici dobijaju
obavetenja o najnovijim zbivanjima ili promenama na sajtovima koji ih zanimaju. RSS slui
za brz pregled sadraja na internetu, jer su podaci "oieni" od suvinih podataka koje u sebi
sadri HTML. Obim ovih informacija nije ogranien samo na tekst, nego moe obuhvatiti i
razliite audio i video formate. Velika prednost RSS feed-a nad "obinim" pregledom neke
Web stranice, poiva upravo u njegovoj brzini i jednostavnosti promene. Ne morate da
pristupate nekoj stranici, da bi ste videli najnovije izmene (vesti i sline informacije, koje se
esto menjaju svakih nekoliko minuta), ve je dovoljno da nekim od RSS itaa "preletite"
preko najnovijih izmena na nekoliko Web sajtova u roku od nekoliko sekundi.

4
8. ta je SOAP?

SOAP (Simple Object Access Protocol) je protokol za komunikaciju izmeu sistema,


pro emu sama komunikacija ne zavisi od platformi na kojima su sistemi zasnovani. Ovaj
protokol je baziran na XML-u koji se koristi kako bi se razmenili podaci izmeu aplikacija.
Slanje XML dokumenata se vri pomou HTTP protokola.
Pre upotrebe SOAP protokola, udaljene aplikacije su komunicirale pomou RPC-a
(Remote Procedure Calls) ili su koristile pozive poput DCOM-a i CORBA-e. HTTP protokol
nije namenjen za prenos binarnih podataka, jer bi takav prenos bio nesiguran. Sigurniji nain
komunikacije pomou ovog protokola je uz pomo tekstualnih podataka, jer je HTTP
protokol i namenjen prenosu ovakvog sadraja.
SOAP kao protokol omoguava komunikaciju izmeu aplikacija koje rade na
razliitim operativnim sistemima, razliitim platformama i pisane su u razliitim
programskim jezicima. Jedini uslov koji one moraju da ispune je da podravaju HTTP
protokol. Aplikacije razmenjuju XML poruke unapred dogovorenog formata.
Komunikacija pomou SOAP protokola obuhvata sledee faze:
SOAP klijent kreira zahtev (XML dokument)
Zahtev se alje SOAP serveru pomou HTTP protokola
SOAP server kreira odgovor (XML dokument) na osnovu zahteva upuenog od strane
SOAP klijenta
Odgovor se alje SOAP klijentu pomou HTTP protokola

9. ta je SOAP poruka i navesti primer.

SOAP poruka je formatirani XML dokument koji mora potovati odreena pravila:
SOAP poruka mora biti korektno formatirana sa XML omotaem (envelope)
SOAP poruka ne sme sadrati DTD reference, kao in instrukcije za procesiranje XML
dokumenta

SOAP poruka se sastoji iz sledeih delova:


Omota (envelope) identifikuje da XML dokument predstavlja SOAP poruku
Zaglavlje sadri informacije o onome ko alje poruku, primaocu i primeni poruke
Telo poruke sadri samu poruku zajedno sa blokom poruka koje govore o grekama
koje su se dogodile prilikom obrade informacija
Blok poruka sa grekama sadri podatke o grekama koje su nastale tokom
komunikacije

SOAP zahtev SOAP odgovor


<?xml version="1.0"?> <?xml version="1.0"?>
<soap:Envelope <soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope" xmlns:soap=http://www.w3.org/2001/12/soap-envelope
soap:encodingStyle="http://www.w3.org/2001/12/soap- soap:encodingStyle="http://www.w3.org/2001/12/soap-
encoding"> encoding">
<soap:Body xmlns:m="prosek"> <soap:Body xmlns:m="prosek">
<m:VratiProsek> <m:VratiProsekOdgovor>
<m:IndeksStudenta>12345</m: IndeksStudenta > <m:Prosek>8.78</m:Prosek>
</m: VratiProsek > </m: VratiProsekOdgovor >
</soap:Body> </soap:Body>
</soap:Envelope> </soap:Envelope>

5
10. ta je Web servis?

Web servisi predstavljaju modularne, samoopisujue aplikacije koje se mogu objaviti,


locirati i pozivati sa bilo koje take na Web-u. Oni su kreirani kako bi podrali interakciju
razliitih sistema bez obzira na platformu na kojoj su oni bazirani i korieni programski
jezik. Komunikacija izmeu sistema se ostvaruje pomou standardizovanih otvorenih
protokola, kao to su HTTP, SMTP, FTP, ... U osnovi Web servisa se nalazi XML koji
predstavlja univerzalni jezik za razmenu podataka na internetu. Osnovne karakteristike Web
servisa su:
Interoperabilnost sposobnost za zajedniki rad izmeu vie razliitih sistema
SOA (Sevice Oriented Architecture) - Oblik vieslojne organizacije raunarskih
sistema koji obezbeuje deljenje logike poslovanja i informacija od strane razliitih
softverskih sistema i naina njihovog korienja
Skalabilnost menjanje postojeih funkcionalnosti je uz minimalne trokove i
najmanji mogui uticaj na sistem

Arhitektura Web servisa, kao i jezici i protokoli koji se koriste u svakom od delova su
prikazani na sledeoj slici:

Tok servisa
(WSFL Web Service Flow Language)
Otkrivanje servisa
(UDDI Universal Description, Discovery and
Integration)
Objavljivanje servisa
(UDDI Universal Description, Discovery and
Integration)
Opis servisa
(WSDL Web Service Description Language)
Razmena XML poruka
(SOAP Simple Object Access Protocol)
Mrea
(Protokoli HTTP, SMTP, FTP, ...)

6
11. ta je WSDL?

WSDL (Web Service Description Language) predstavlja jezik za opis Web servisa
koji je baziran na XML-u. Glavni elementi u okviru WSDL-a su:
<types> - tipovi podataka koje koristi Web servis. Opisuje sve tipove podataka koji se
koriste izmeu klijenta i servera. WSDL preporuuje upotrebu XML Schema za
definisanje tipova podataka, mada se mogu koristiti i drugi jezici.
<message> - poruke koje koristi Web servis. Definie se naziv poruke i daje opis
poruke. Sastoji se od nula ili vie delova (part).
<portType> - operacije koje Web servis moe da izvri. On predstavlja "interfejs"
Web servisa. Definie operacije koje Web servis moe izvriti kao i poruke koje se
razmenjuju tokom komunikacije. Tipovi operacija mogu biti:
o one-way operacija alje zahtev ali ne prima odgovor
o request-response operacija alje zahtev i prima odgovor
o solicit-response operacija eka odgovor pa onda alje novi zahtev
o notification operacija eka odgovor
<binding> - protokoli za komunikaciju sa Web servisom. On definie konkretan
protokol i format podataka za portType. Mogu se koristiti standardni protokoli
(HTTP, SMTP, ...) ali i definisati novi. Binding element ima dva atributa:
o name definie ime binding-a koje moe biti proizvoljno
o type ukazuje na port za binding

Struktura WSDL-a je prikazana u nastavku:

<definitions>
<types>
definicija tipova ...
</types>
<message>
definicija poruka ...
</message>
<portType>
<operation>
definicija operacija ...
</operation>
</portType>
<binding>
definicija povezivanja ...
</binding>
</definitions>

7
12. ta je UDDI?

UDDI (Universal Description, Discovery and Integration) predstavlja XML bazirani


registar koji omoguava objavljivanje servisa i njihovo lako pronalaenje i integraciju od
strane korisnika. Sastoji se iz dva dela:
registar svih metapodataka servisa koji ukljuuje i pokaziva na WSDL opis servisa
skup WSDL definicija tipova portova koji se koriste za manipulaciju i pretragu
registara

UDDI je organizovan u obliku direktorijuma, pri emu je u analogiji sa telefonskim


imenikom kreirano tri tipa direktorijuma:
bele strane (provajderi) vre identifikaciju organizacije (preduzea ili odeljenja).
Predstavljaju najvii nivo u hijerarhiji. Sadre informacije o provajderu koji prua dati
servis. U okviru njega se navode svi servisi za dati provajder.
ute strane (servisi) vre podelu usluga po kategorijama (narudbine, rezervacije,
itd.) baziranu na standardnoj taksonomiji. Najee je nekoliko utih strana, pri emu
svaka opisuje po jedan servis, povezano sa jednom belom stranom.
zelene strane (veze) opisuju pristup Web servisu. Sadri tehnike informacije o
servisima i to direktne informacije (adresa servisa, parametri i reference ka
specifikaciji) i indirektne informacije (email, FTP i CORBA detalji servisa).
Uglavnom je vie zelenih strana povezano za jedan servis (utu stranu).

13. ta je AJAX?

AJAX (Asynchronous JavaScript And XML) predstavlja tehnologiju za razmenu


podataka sa serverom bez potrebe da se ponovo uitava cela stranica. Pomou AJAX-a Web
aplikacije mogu biti bre, dinaminije, bogatije i korisnije. AJAX sam po sebi ne predstavlja
novu tehnologiju, ve je to skup sledeih tehnologija:
Kombinacija HTML/CSS da obelei i stilie objekat
Kombinacija DOM/JavaScript da dinamiki prikae objekat i da omogui korisnicima
interakciju sa prezentovanim informacijama
XMLHttpRequest objekat obezbeuje nain za razmenu podataka asinhrono izmeu
servera i internet pretraivaa da bi se spreilo ponovno uitavanje celih stranica

AJAX se izvrava na sledei nain:


Desi se dogaaj na klijentskoj strani koji zahteva AJAX komunikaciju sa serverom
Stvori se XMLHttpRequest objekat u okviru koga su definisane funkcije koje e se
izvriti kada stignu podaci od strane servera
alju se zahtevi serveru
Sever obrauje zahteve
Kreiranje odgovora i slanje podataka nazad klijentu (internet pretraivau)
Obrada podataka koje je server poslao
Auriranje sadraja na klijentskoj strani

8
14. XMLHttpRequest objekat.

XMLHttpRequest objekat slui za razmenu podataka sa serverom bez ponovnog


uitavanja stranice. Podravaju ga svi moderni internet pretraivai sem IE5 i IE6 koji koriste
ActiveX objekat. XMLHttpRequest se kreira na sledei nain:

if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}

Nakon toga se otvara konekcija sa serverom i alje zahtev:

xmlhttp.open (method, URL, async );


xmlhttp.send(string);

U prethodnim izrazima se koriste sledei parametri:


method POST ili GET
URL adresa na serverskoj strani
async TRUE ili FALSE
string koristi se samo za POST metodu

Da bi se analizirao odgovor servera, koriste se responseText i responseXML atributi


HttpRequest objekta.
Vane osobine XMLHttpRequest objekta su:
readyState sadri statuse stanja objekta kao vrednosti od 0 do 4
o 0 zahtev nije pokrenut
o 1 veza sa serverom uspostavljena
o 2 zahtev primljen
o 3 obrada zahteva
o 4 zahtev obraen i odgovor spreman
onreadystatechange sadri funkciju koja se izvrava na svaku promenu readyState-a
status
o 200 OK
o 404 Page not found

9
15. ta je JavaSpace?

JavaSpace predstavlja tehnologiju za kreiranje distribuiranih sistema. JavaSpace


tehnologija je prvenstveno dizajnirana da bude jednostavna: prostorno-bazirano
programiranje zahteva uenje samo nekoliko operacija. JavaSpace tehnologija je
koordinacioni alat na visokom nivou za spajanje procesa zajedno u distribuiranu aplikaciju.
Ona obezbeuje fundamentalno razliit programski model koji gleda aplikaciju kao skup
procesa koji sarauju kroz protok objekata u i iz jednog ili vie prostora. Prostor (space) je
podeljeno, mreno dostupno spremite za objekte. Procesi ne komuniciraju direktno ve
preko ovih prostora. Kljune karakteristike JavaSpace-a su:
JavaSpace programski interfejs je jednostavan jer aplikacije vre interakciju sa
prostorom kroz svega nekoliko operacija.
Prostori predstavljaju mreno-dostupne "deljene memorije" koje su kreirane kako bi
procesi mogli da istovremeno daljinski vre interakciju.
Prostor sam rukuje detaljima istovremenog pristupa, ostavljajui programerima da se
fokusiraju na dizajn klijenta i protokola izmeu njih.
Prostori obezbeuju pouzdan smetaj za objekte.
Objekat u prostoru se locira preko asocijativne petlje.

16. ta je jQuery?

jQuery predstavlja JavaScript biblioteku koja u velikom meri pojednostavljuje


JavaScript programiranje. jQuery omoguava sledee:
kreiranje funkcionalnosti koje se mogu kreirati i pomou JavaScript-a ali sa mnogo
vie koda
dodavanje funkcionalnosti Web strani koje se ne mogu dodati istim CSS-om i
HTML-om
menjanje atributa i vrednosti
menjanje elemenata u HTML-u
prikupljanje informacija o elementima stranica
reagovanje na deavanja koja proizvode korisnici (klik, prelazak mia, ...)

Osnovna sintaksa jQuery-ja je sledea: $(selektor).action()


znak $ definie jQuery
(selektor) slui da pronae eljene HTML elemente
action govori koja akcija e biti izvrena nad elementima

Primer: $("p").hide() predstavlja jQuery sintaksu koja sakriva sve paragrafe

10
17. ta je JSON?

JSON (JavaScript Object Notation) predstavlja tekstualni otvoreni standard za


razmenu podataka. Izveden je iz JavaScript jezika i slui da bi predstavio objekte. Iako je
blisko povezan sa JavaScript-om, JSON predstavlja nezavisan jezik koji poseduje parsere i za
mnoge druge jezike. esto se koristi za serijalizaciju i prenos strukturiranih podataka izmeu
servera i Web aplikacija, ime predstavlja alternativu za XML.
JSON tekst se sastoji od skupa tokena, pri emu se tokeni sastoje od strukturnih
karaktera, string-ova, brojeva, false, true i null vrednosti. Sam tekst predstavlja serijalizovani
objekat ili niz. Objekat predstavlja neureenu kolekciju nula ili vie promenljivih, pri emu je
ime promenljive tipa string, a vrednost promenljive moe biti string, boolean, nul, objekat ili
niz. Niz je ureena sekvenca vrednosti.
Sam JSON ima nekoliko ogranienja:
odreene rei moraju biti ispisane malim slovima (false, true, null, object, array,
number i string)
struktura objekta mora biti ograniena vitiastim zagradama "{ }"
imena objekata moraju biti jedinstvena
nizovi se predstavljaju pomou uglastih zagrada "[ ]", a elementi se odvajaju pomou
znaka zarez ","
oktalni i heksadecimalni brojevi nisu dozvoljeni, kao ni 0 na prvom mestu broja
stringovi poinju i zavravaju se znakovima navoda " "

Sledei primer za JSON sadri ime i prezime studenta koji su string tipa, godine koje
su numerikog tipa i smer koji predstavlja novi objekat:

{
"firstName": "Petar",
"lastName" : "Petrovic",
"age" : 25,
"course" :
{
"courseName": "Informacione tehnologije",
"ESPB" : 240
},
}

11
18. ta je HTML5, objasniti nove elemente vezane za multimediju.

HTML 5 predstavlja novi standard za kreiranje Web stranica koji u sebi sadri HTML
CSS3 i JavaScript i koji bi trebao da bude nezavistan od ureaja na kom se koristi. Njegovi
osnovni ciljevi su:
smanjiti potrebu za eksternim plugin-ovima, kao to je npr. flash
bolja obrada greaka
vie tagova koji bi trebali da smanje koliinu skripti

HTML5 je jo uvek u fazi razvoja, tako da njegovu standardizaciju moemo oekivati


2014 godine, po procenama W3 Konzorcijuma. Kao peta verzija HTML-a osnovni cilj je bio
unapreenje ovog jezika, kao i podrka za najnovije multimedijalne sadraje, a pri tome je
cross-platform, tako da nije bitno da li koristite tablet, smartphone, netbook ili Smart TV,
bitno je da va pretraiva podrava HTML5.

Novi elementi u okviru HTML-a 5 vezani za multimediju su sledei:


Multimedija audio: Do sada nije postojao standard za presluavanje audio fajlova na
web strani. Danas se veina audio fajlova presluava preko plugin-ova (Flash), tako
da svaki od pretraivaa moe imati razliite. HTML5 kao jednu od novina sadri
element <audio>, kojim je definisan standard za audio fajlove na Web stranama.
<!DOCTYPE html>
<html>
<body>
<audio controls="controls">
<source src="song.ogg" type="audio/ogg" />
<source src="song.mp3" type="audio/mpeg" />
Your browser does not support the audio element.
</audio>
</body>
</html>

Multimedija video: Kao i sa audio elementom, isti je sluaj i sa video elementom.


Do sada su bili potrebni razni dodaci (plug-in), Apple QuickTime, RealPlayer ili
Adobe Flash, koji su ugraeni u pretraivae. Podrka za ovaj element je u razvoju,
tako da ga ne podravaju svi pretraivai jo uvek, ali se radi na tome. Najvei
problem je u usaglaavanju formata. HTML 5 podrava .ogg, .mpeg4 i .webM, dok je
ostale formate potrebno konvertovati.
<!DOCTYPE html>
<html>
<body>
<video width="320" height="240" controls="controls">
<source src="movie.mp4" type="video/mp4" />
<source src="movie.ogg" type="video/ogg" />
Your browser does not support the video tag.
</video>
</body>
</html>

12
19. ta je HTML5, objasniti nove elemente vezane za grafiku.

HTML 5 predstavlja novi standard za kreiranje Web stranica koji u sebi sadri HTML
CSS3 i JavaScript i koji bi trebao da bude nezavistan od ureaja na kom se koristi. Njegovi
osnovni ciljevi su:
smanjiti potrebu za eksternim plugin-ovima, kao to je npr. flash
bolja obrada greaka
vie tagova koji bi trebali da smanje koliinu skripti

HTML5 je jo uvek u fazi razvoja, tako da njegovu standardizaciju moemo oekivati


2014 godine, po procenama W3 Konzorcijuma. Kao peta verzija HTML-a osnovni cilj je bio
unapreenje ovog jezika, kao i podrka za najnovije grafike sadraje, a pri tome je cross-
platform, tako da nije bitno da li koristite tablet, smartphone, netbook ili Smart TV, bitno je
da va pretraiva podrava HTML5.

Do nedavno, Web programeri su bili ogranieni na CSS i JavaScript kod kreiranja


animacija i vizuelnih efekata za svoje Web stranice, ili prinueni da koriste plugin-ove kao
to je Flash. Sa dodatkom novih tehnologija kao to su Canvas elementi, Web GL i SVG
slike, vie nema potrebe za ovim.
HTML5 Canvas elementi koriste JavaScript za crtanje raznih oblika na Web strani.
Canvas predstavlja "platno" nad kojim imamo potpunu kontrolu nad svakim pikselom.
Canvas element ima nekoliko metoda za crtanje putanja, pravougaonih figura, krugova,
krivih, karaktera kao i za dodavanje slika.
WebGL (Web-based Graphics Library) je biblioteka koja unapreuje sposobnosti
JavaScript-a. Omoguava kompatabilnim pretraivaima prikaz interaktivnih 3D animacija.
Sastavni je deo Canvas elementa koji omoguava 3D kompjutersku grafiku bez korienja
plugin-ova. Pristupa mu se preko DOM interfejsa.
SVG (Scalable Vector Graphics) je jezik za opisivanje 2D vektorske grafike. Koristi
se za definisanje grafike na Web-u koja se bazira na vektorima. SVG definie grafiku u XML
formatu. SVG grafika ne gubi na kvalitetu ukoliko se zumira ili promeni veliina. Svaki
element i atribut se moe animirati. SVG sarauje i sa ostalim W3C standardima kao to su
DOM i XSL.

13
20. ta je HTML5, objasniti nove aplikacije.

HTML 5 predstavlja novi standard za kreiranje Web stranica koji u sebi sadri HTML
CSS3 i JavaScript i koji bi trebao da bude nezavistan od ureaja na kom se koristi. Njegovi
osnovni ciljevi su:
smanjiti potrebu za eksternim plugin-ovima, kao to je npr. flash
bolja obrada greaka
vie tagova koji bi trebali da smanje koliinu skripti

HTML5 je jo uvek u fazi razvoja, tako da njegovu standardizaciju moemo oekivati


2014 godine, po procenama W3 Konzorcijuma. Kao peta verzija HTML-a osnovni cilj je bio
unapreenje ovog jezika, kao i podrka za najnovije aplikacije, a pri tome je cross-platform,
tako da nije bitno da li koristite tablet, smartphone, netbook ili Smart TV, bitno je da va
pretraiva podrava HTML5.

HTML 5 je uinio ozbiljan pomak u cilju kreiranja Web aplikacija. Budue Web
aplikacije odlikovae se nekim od sledeih karakteristika:
Lokalno skladitenje podataka davanje mogunosti korisnicima da lokalno
uskladite svoje Web strane. Na ovaj nain je podrana poslednja velika karakteristika
desktop softvera jer je omoguen pristup disku pa tako vie nema potrebe za
instaliranjem bilo kakvog softvera
Lokalni pristup fajlovima - HTML5 konano prua standardan nain za interakciju sa
lokalnim fajlovima, uz pomo File API specifikacije. Kao primer svojih mogunosti,
File API se moe upotrebiti za pregled neke slike dok se ona alje serveru, ili da
dozvoli aplikaciji da sauva referencu fajla dok je korisnik offline. Moe se koristiti
logika sa strane korisnika (client-side logic) za proveru poklapanja ekstenzije upload-
ovanog fajla ili da se ogranii veliina fajla koja se moe upload-ovati.
Lokalna SQL baza podataka
Aplikacije sa keiranjem podataka - Od sve veeg znaaja je dostupnost Web
aplikacija kada smo offline. Svi pretraivai imaju svoje mehanizme za keiranje, ali
su oni uglavnom nepouzdani. Sa ApplicationCache interfejsom HTML 5 prua
sledee prednosti:
o Offline pretraivanje korisnici se mogu kretati po stranici iako su offline.
o Brzina keirani podaci su sauvani na lokalnom disku, tako da se uitavaju
bre.
o Smanjenje optereenja servera pretraiva skida samo podatke koji su se
promenili.
JavaScript "radnici" (workers) predstavljaju JavaScript elemente koje HTML
stranice izvravaju u pozadini, nezavisno od ostalih user-interface skripti. Njihova
primena je u tome da se izvravaju zahtevni procesi u pozadini bez prekidanja
korisnikog interfejsa.
XHTMLHttpRequest 2 - Koristi se za slanje HTTP ili HTTPS zahteva direktno Web
serverima, iji se odgovori vraaju u skriptu. Podaci sa servera se mogu primiti kao
XML ili obian tekst. Podaci iz odgovora se mogu direktno koristiti u DOM-u
trenutno aktivnog dokumenta u prozoru pretraivaa, bez uitavanja dokumenta nove
web strane.

14
21. ta je CMS?

CMS (Content Management System) predstavlja sistem za upravljanjem sadraja


odreenog sistema. CMS obavlja etiri osnovna zadatka - to su organizacija, obrada,
objavljivanje i izmena sadraja. Organizacija se odnosi na smetanje odreenog sadraja na
odgovarajue mesto i njegovo povezivanje sa postojeim sadrajem. Obrada oznaava proces
formatiranja sadraja kako bi zadobio odgovarajuu formu koja omoguava uvanje i
objavljivanje. Objavljivanje je proces kojim se sadraj ini dostupnim korisnikoj populaciji.
Izmena sadraja odnosi se na proces unoenja izmena u sadraj koji je ve objavljen na sajtu.
CMS sistemi za Web sajtove (nazivaju se i WCM Web Content Management) u
sutini predstavljaju aplikacije za ije korienje nije potrebno programersko znanje. U
pitanju je dinamika Web aplikacija sa troslojnom arhitekturom. Na serverskoj strani nalazi
se aplikativni sloj, koji se sastoji od Web i aplikativnog servera (npr. Tomcat, Apache, IIS)
zaduenog da procesira aplikaciju kodiranu u nekom od programskih ili skript jezika (npr.
JSP, PHP, CGI, ASP, Python, Perl). Na istoj strani nalazi se i sloj za rukovanje bazama
podataka koji se oslanja na funkcionalnost nekog od sistema za rukovanje relacionim bazama
podataka (npr. MySql, SQL Server, Oracle). Na drugoj, klijentskoj strani, prezentacioni sloj
CMS sistema se sastoji iz klijentskih aplikacija, koje se izvravaju na korisnikovom raunaru.
Komunikacija izmeu tri navedena sloja ostvaruje se ili posredstvom lokalne mree,
ili putem Interneta, a u oba sluaja uz korienje transportnog protokola TCP/IP.
Svaki CMS sastoji se od dva nezavisna dela od kojih svaki ima svoju ulogu i logiku
rada, a to su:
Administratorski deo (backend) - vri se priprema i ureivanje sadraja koji e biti
prikazan na sajtu
Korisniki deo (frontend) - predstavlja izgled sajta

22. ta je MVC?

MVC (Model View Controller) je softverska arhitektura koja se esto koristi prilikom
kreiranja Web aplikacija. Ona razdvaja aplikacionu logiku za korisnika od korisnikog
interfejsa i time omoguava nezavistan razvoj, testiranje i odravanje.
U okviru MVC arhitekture se koriste tri glavne komponente:
model - to je deo aplikacije koji implementira logiku. On obavetava pridruene
poglede i kontrolere kada se desi promena u njegovom stanju. Ova obavetenja
omoguavaju pogledima da prikau promene.
pogled (view) je komponenta koja predstavlja korisniki interfejs i prikazuje
podatke iz modela.
kontroler je komponenta koja izvrava interakciju sa korisnikom, radi sa modelima i
bira pogled koji e se prikazati.

15
23. ta je Web 2.0?

Web 2.0 je nastao kao nadogradnja prethodne verzije Web-a (Web 1.0). Web 1.0 je
bio sainjen od Web stranica koje su sadrale informacije i njihova osnovna svrha je bila
pruanje informacija. Jedini nain na koji su korisnici mogli da koriste takvu vrstu Web
sajtova je da pasivno pregledaju njihov sadraj. Vremenom se javila potreba da sam korisnik
na razliite naine uestvuje u postavljanju i menjanju sadraja na Web-u, a i same Web
aplikacije su unapreene u tom smeru. Alati za Web 2.0 nisu novi, nove su aplikacije koje su
kreirane ranije korienim alatima.
Kljuni pojmovi u definiciji Web-a 2.0 jesu:
sadraj kreiran od strane korisnika (user generated content) i
socijalni mediji (social media) skup Web aplikacija koje omoguavaju kreiranje i
razmenu user-generated sadraja.

Web 2.0 sajt omoguava korisnicima da meusobno komuniciraju pomou socijalnih


medija kao kreatori user-generated sadraja u virtuelnoj zajednici.

Web 2.0 ukljuuje:


Socijalne mree,
blogove,
wiki sajtove,
sajtove za razmenu video materijala (video sharing),
"tagovanje",
RSS

24. ta je Web mining?

Web mining je prikupljanje zanimljivih i potencijalno korisnih obrazaca i informacija


sa Web sajtova. Otkrivanje i pronalaenje informacija uz pomo Web mininga moe se
posmatrati sa stanovita tri razliite tehnike: Web Content Mining, Web Structure Mining i
Web Usage Mining.
Web content Mining je proces izdvajanja znanja iz sadraja dokumenta ili njegovog
opisa. Sadraj podataka koji se tu moe nai odgovara kolekciji informacija koje su
dizajnirane da bi bile prenete korisniku. Ove informacije se mogu sastojati od teksta, slika,
zvuka, videa i struktuiranih podataka kao sto su tabele ili liste. Istraivake aktivnosti u ovoj
oblasti ukljuuju i tehnike iz drugih oblasti kao to su Information Retrieval (IR) and Natural
Language Processing (NLP).
Web structure mining je proces izdvajanja saznanja iz World Wide Web-a. Tipian
graf Web-a sastoji se od Web stranica koje predstavljaju vorove i hiperlinkova koji povezuju
dve srodne stranice. Sadraj u okviru jedne stranice moe biti struktuiran u obliku stabla
zasnovanom na HTML i XML tagovima u okviru stranice. Na osnovu ovoga Web Structure
Mining se moe smatrati procesom otkrivanja strukturnih informacija na Web-u.
Web usage Mining poznat je i kao Web Log Mining i bavi se izdvajanjem
interesantnih obrazaca iz web access logova. To je primena data maning tehnika na
otkrivanje interesantne upotrebe ablona sa Web podataka u cilju razumevanja i boljeg
pristupa aplikacijama zasnovanim na Web-u. Korienje podataka sa neke Web stranice
dovodi do toga da se snima identitet ili poreklo Web korisnika koji trenutno pristupa stranici
zajedno sa njegovim trenutnim zahtevima i ponaanjem na Web sajtu. Neki od tipinih
podataka prikupljenih na Web sajtu su IP adrese, reference i vreme pristupa korisnika.

16
25. Objasniti osnovne principe zatite Web aplikacije.

U dananje vreme internet, a samim tim i Web aplikacije postale su najdominantnija i


najisplatljivija tehnologija koja se koristi za obavljanje raznih poslova na internetu. Na
osnovu istraivanja od strane ITU-a (meunarodne telekomunikacione unije) 2010. godine,
internet broji vie od dve milijarde korisnika. Upravo zbog svoje rairenosti internet a samim
tim i Web aplikacije, postale su sigurnosne kritine take u komunikaciji izmeu klijenata i
servera.
Mnoge Web aplikacije zahtevaju unos linih podataka, registraciju, a zatim i
prijavljivanje na sistem da bi se pristupilo i koristila aplikacija. Ti podaci su najee mail
adresa, ifre, brojevi rauna, adresa, brojevi telefona, to moe dovesti do naruavanja
sigurnosti korisnika. Napredovanjem tehnologije, pronalaze se naini da se ti podaci saznaju i
time narui sigurnost korisnika i sistema, a samim tim i izvri kraa podataka, novca sa
bankovnih rauna i pridobiju druge koristi.
Kako bi se aplikacije i korisnici zatitili potrebno je istraiti slabosti Web aplikacija,
identifikovati kritine take, a zatim nakon stvaranja klasa potencijalnih napada, ponuditi i
reenje, tj. zatitu, a da se ne smanji kvalitet i koliina usluge. Klju zatite je u proveri unosa
i smisla svega to moe dovesti do naruavanja korisnika i aplikacije.
Napadi se mogu razvrstati u sledee klase:
Napadi vezani za autentifikaciju (autentifikacija je provera identiteta korisnika Web
aplikacije)
Napadi vezani za autorizaciju (autorizacija je provera privilegija korisnika)
Napadi na klijentsku stranu (ubacivanje nekorektnog sadraja i izvravanje skripti)
Napadi vezani za izvravanje naredbi
Otkrivanje poverljivih informacija (otkrivanje informacija o Web aplikaciji)
Logiki napadi

17

You might also like