A böngésző egy olyan szoftveralkalmazás, amelyet a világhálón található tartalmak, például weboldalak, képek, videók és egyéb fájlok megkeresésére, visszakeresésére és megjelenítésére használnak. Kliens/szerver modellként a böngésző a számítógépen futó kliens, amely kapcsolatba lép a webkiszolgálóval, és információt kér. A webkiszolgáló visszaküldi az információt a webböngészőnek, amely megjeleníti az eredményeket a számítógépen vagy más internetképes eszközön, amely támogatja a böngészőt.
A mai böngészők teljesen működőképes szoftvercsomagok, amelyek képesek értelmezni és megjeleníteni a HTML weboldalakat, alkalmazásokat, JavaScriptet, AJAX-et és más, webszervereken tárolt tartalmakat.
Néhány böngésző olyan bővítményeket kínál, amelyek kibővítik a szoftver képességeit, így az képes multimédiás információk (beleértve a hangot és a videót) megjelenítésére, vagy a böngésző olyan feladatok elvégzésére használható, mint a videokonferencia, a weboldalak tervezése vagy a böngésző adathalászat elleni szűrőkkel és egyéb biztonsági funkciókkal való kiegészítése.
-
A felhasználói felület: A felhasználói felület az a tér, ahol a felhasználó interakcióba lép a böngészővel. Ide tartozik a címsor, a vissza és a következő gombok, a kezdőlap gomb, a frissítés és a leállítás, a könyvjelző opció stb. Minden más rész, kivéve az ablakot, ahol a kért weboldal megjelenik, ide tartozik.
-
A böngészőmotor: A böngészőmotor hídként működik a felhasználói felület és a renderelőmotor között. A különböző felhasználói felületekről érkező bemeneteknek megfelelően lekérdezi és manipulálja a renderelőmotort.
-
A renderelőmotor: A renderelőmotor, ahogy a neve is mutatja, felelős a kért weboldal megjelenítéséért a böngésző képernyőjén. A renderelőmotor értelmezi a CSS segítségével formázott HTML, XML dokumentumokat és képeket, és létrehozza a felhasználói felületen megjelenő elrendezést. A pluginok vagy bővítmények használatával azonban más típusú adatok is megjeleníthetők.
A különböző böngészők különböző renderelőmotorokat használnak:
- Internet Explorer: Trident
- Firefox & egyéb Mozilla böngészők: Gecko
- Chrome & Opera 15+: Blink
- Chrome (iPhone) & Safari: Webkit
-
Hálózat: Webkit
-
Hálózat: A böngésző azon komponense, amely a HTTP vagy FTP általános internetes protokollok segítségével kéri le az URL-címeket. A hálózati komponens kezeli az internetes kommunikáció és a biztonság minden aspektusát. A hálózati komponens a hálózati forgalom csökkentése érdekében megvalósíthatja a lekérdezett dokumentumok gyorsítótárát.
-
JavaScript-értelmező: A böngészőnek az a komponense, amely értelmezi és végrehajtja a weboldalba ágyazott javascript kódot. Az értelmezett eredményeket megjelenítésre elküldi a megjelenítő motornak. Ha a szkript külső, akkor először az erőforrást kell lekérni a hálózatról. Az elemző addig várakozik, amíg a szkript végrehajtásra kerül.
-
UI Backend: Az UI backend az olyan alapvető widgetek rajzolására szolgál, mint a kombinációs dobozok és ablakok. Ez a backend egy általános, nem platformspecifikus felületet állít ki. Alatta az operációs rendszer felhasználói felületének módszereit használja.
-
Adatmegmaradás/tárolás: Ez egy perzisztencia réteg. A böngészők olyan tárolási mechanizmusokat támogatnak, mint a localStorage, IndexedDB, WebSQL és FileSystem. Ez egy kis adatbázis, amelyet annak a számítógépnek a helyi meghajtóján hoznak létre, ahol a böngésző telepítve van. Olyan felhasználói adatokat kezel, mint a gyorsítótár, sütik, könyvjelzők és beállítások.
Egy fontos dolog, amit itt meg kell jegyezni, hogy a webböngészőkben, például a Google Chrome-ban minden egyes lap külön folyamatban fut (a renderelő motor több példánya).