Przeglądarka to aplikacja używana do lokalizowania, pobierania i wyświetlania zawartości w sieci World Wide Web, w tym stron internetowych, obrazów, wideo i innych plików. Jako model klient/serwer, przeglądarka jest klientem uruchomionym na komputerze, który kontaktuje się z serwerem WWW i żąda informacji. Serwer WWW wysyła informacje z powrotem do przeglądarki internetowej, która wyświetla wyniki na komputerze lub innym urządzeniu z dostępem do Internetu, które obsługuje przeglądarkę.
Dzisiejsze przeglądarki są w pełni funkcjonalnymi pakietami oprogramowania, które mogą interpretować i wyświetlać strony internetowe HTML, aplikacje, JavaScript, AJAX i inną zawartość hostowaną na serwerach WWW.
Wiele przeglądarek oferuje wtyczki, które rozszerzają możliwości oprogramowania tak, że może ono wyświetlać informacje multimedialne (w tym dźwięk i wideo), lub przeglądarka może być używana do wykonywania zadań takich jak wideokonferencje, do projektowania stron internetowych lub dodawania filtrów anty-phishingowych i innych funkcji bezpieczeństwa do przeglądarki.
-
Interfejs użytkownika: Interfejs użytkownika to przestrzeń, w której Użytkownik wchodzi w interakcję z przeglądarką. Obejmuje on pasek adresu, przyciski wstecz i dalej, przycisk domowy, odświeżanie i zatrzymywanie, opcję zakładek itp. Każda inna część, z wyjątkiem okna, w którym wyświetlana jest żądana strona internetowa, wchodzi w jego skład.
-
Silnik przeglądarki: Silnik przeglądarki działa jako pomost między interfejsem użytkownika a silnikiem renderującym. Zgodnie z danymi wejściowymi z różnych interfejsów użytkownika, zapytuje i manipuluje silnikiem renderującym.
-
Silnik renderujący: Silnik renderujący, jak sama nazwa wskazuje, jest odpowiedzialny za renderowanie żądanej strony internetowej na ekranie przeglądarki. Silnik renderujący interpretuje dokumenty HTML, XML i obrazy, które są formatowane za pomocą CSS i generuje układ wyświetlany w interfejsie użytkownika. Jednak przy użyciu wtyczek lub rozszerzeń można wyświetlać również inne typy danych.
Różne przeglądarki używają różnych silników renderujących:
- Internet Explorer: Trident
- Firefox &inne przeglądarki Mozilla: Gecko
- Chrome & Opera 15+: Blink
- Chrome (iPhone) & Safari: Webkit
-
Sieć: Komponent przeglądarki, który pobiera adresy URL za pomocą popularnych protokołów internetowych HTTP lub FTP. Komponent sieciowy obsługuje wszystkie aspekty komunikacji internetowej i bezpieczeństwa. Komponent sieciowy może implementować pamięć podręczną pobieranych dokumentów w celu zmniejszenia ruchu sieciowego.
-
Interpretator języka JavaScript: Jest to komponent przeglądarki, który interpretuje i wykonuje kod javascript osadzony na stronie internetowej. Zinterpretowane wyniki są wysyłane do silnika renderującego w celu wyświetlenia. Jeżeli skrypt jest zewnętrzny to najpierw zasób jest pobierany z sieci. Parser wstrzymuje się do czasu wykonania skryptu.
-
Sterowanie UI: Backend UI jest używany do rysowania podstawowych widżetów, takich jak pola kombi i okna. Ten backend eksponuje ogólny interfejs, który nie jest specyficzny dla danej platformy. Pod spodem wykorzystuje metody interfejsu użytkownika systemu operacyjnego.
-
Data Persistence/Storage: Jest to warstwa persystencji. Przeglądarki obsługują mechanizmy przechowywania takie jak localStorage, IndexedDB, WebSQL i FileSystem. Jest to mała baza danych tworzona na dysku lokalnym komputera, na którym zainstalowana jest przeglądarka. Zarządza ona danymi użytkownika, takimi jak pamięć podręczna, pliki cookie, zakładki i preferencje.
Ważną rzeczą, na którą należy zwrócić uwagę jest to, że w przeglądarkach internetowych takich jak Google Chrome każda karta działa w oddzielnym procesie (wiele instancji silnika renderującego).