Web pretraživač je program kroz koji se pregledavaju Internet stranice. Općenita arhitektura svih popularnih preglednika je slična: sastoji se od nekoliko komponenata koje su neovisne jedna o drugoj, a koje se kasnije kombiniraju kroz posebna sučelja.
Instrukcije
Korak 1
Prvo dolaze mrežne postavke: JavaScript, XML parser i Display Backend (rukovanje događajima na ekranu). To su 4 nezavisna modula koji rade u okviru grafičkog mehanizma. Zatim se programira mehanizam visoke razine koji je, poput korisničkog sučelja, sposoban pohraniti određene podatke. Postoje i dodatne komponente (dodaci, multimedija, modul pošte, pomoć, alati za programere itd.), Ali oni ne utječu toliko na strukturu preglednika.
Korak 2
Svaka komponenta arhitekture je na određenom nivou i može komunicirati samo s najbližim elementom. Stoga se arhitektura preglednika naziva slojevita.
Korak 3
Korisničko sučelje je vrsta međuspremnika koji postoji između motora i korisnika. On je taj koji prihvaća sve želje korisnika, pruža mu sve mogućnosti i obrađuje sve njegove postupke. Sučelje pomaže u pružanju standardnog skupa funkcija. Mehanizam visoke razine odgovoran je za obradu stranice, odnosno za prikaz cijelog grafičkog dijela. Također počinje učitavati stranicu, osvježava ih, preskače naprijed ili naprijed, radi s oznakama, poviješću i postavkama koje utječu na grafiku.
Korak 4
Isti grafički mehanizam glavni je dio svakog pretraživača. Prikazuje sadržaj resursa i analizira HTML i XML, uzimajući u obzir utjecaj CSS-a i JS-a, kao i drugih objekata (slike, flash). Na osnovu svih podataka koje prikuplja motor, generira se izgled koji korisnik vidi na monitoru.
Korak 5
Mreža komponenata, JS, XML parser su specijalizirani dijelovi programa koji rade na odgovarajućim parametrima. Display Backend povezan je s OS-om i daje izlaz najprimitivnijih grafika (trake za pomicanje, obrasci, ukrašavanje prozora itd.), Što ovisi o operativnom sistemu.
Korak 6
Zahvaljujući sustavu komponenata, preglednik može lako promijeniti dizajn, lakše je lokalizirati programske pogreške, svaka komponenta je poboljšana zasebno i ne utječe na program u cjelini, svaka komponenta može se koristiti zasebno.