Silnik przeglądarki - Browser engine

Silnik przeglądarka ( znany również jako z silnikiem układu lub silniku renderowania ) jest podstawowym składnikiem oprogramowania z każdym większym przeglądarce internetowej . Podstawowym zadaniem silnika przeglądarki jest przekształcenie dokumentów HTML i innych zasobów strony internetowej w interaktywną wizualną reprezentację na urządzeniu użytkownika .

Nazwa i zakres

Silnik przeglądarki nie jest samodzielnym programem komputerowym, ale krytycznym elementem większego programu, takiego jak przeglądarka internetowa , od którego pochodzi termin. (Słowo „ silnik ” jest analogią do silnika samochodu.)

Oprócz „silnika przeglądarki”, dwa inne terminy są powszechnie używane w odniesieniu do pokrewnych pojęć: „silnik układu” i „silnik renderowania”. Teoretycznie układ i renderowanie (lub „malowanie”) mogą być obsługiwane przez oddzielne silniki. W praktyce jednak są one ściśle powiązane i rzadko rozpatrywane oddzielnie.

Oprócz układu i renderowania silnik przeglądarki wymusza politykę bezpieczeństwa między dokumentami, obsługuje nawigację za pośrednictwem hiperłączy i danych przesyłanych za pośrednictwem formularzy oraz implementuje strukturę danych DOM ( Document Object Model ) udostępnianą skryptom stron .

Wykonywanie kodu JavaScript (JS) to jednak osobna sprawa, ponieważ każda większa przeglądarka internetowa używa do tego dedykowanego silnika . Język JS został pierwotnie stworzony do użytku w przeglądarkach, ale teraz jest używany również w innych miejscach, więc implementacja silników JS jest oddzielona od silników przeglądarek. W przeglądarce internetowej oba silniki współpracują ze sobą za pośrednictwem wspólnej struktury danych DOM.

Silniki przeglądarek są używane w innych typach programów oprócz przeglądarek internetowych. Klienty poczty e-mail potrzebują ich do wyświetlania wiadomości e-mail w formacie HTML . Ramy Electron , który jest napędzany przez dwa silniki o Google Chrome przeglądarki, została wykorzystana do stworzenia wielu aplikacji .

Układ i renderowanie

Układ strony internetowej jest zwykle określany przez kaskadowe arkusze stylów (CSS). Każdy arkusz stylów to seria reguł interpretowanych przez silnik przeglądarki. Na przykład niektóre reguły określają szczegóły typografii , takie jak czcionka , kolor i rozmiar tekstu. Silnik łączy wszystkie odpowiednie reguły CSS, aby obliczyć dokładne współrzędne graficzne dla wizualnej reprezentacji, którą maluje na ekranie.

Niektóre silniki mogą rozpocząć renderowanie przed pobraniem wszystkich zasobów strony. Może to skutkować zmianami wizualnymi w miarę odbierania większej ilości danych, takich jak stopniowe wypełnianie obrazów lub przebłysk treści bez stylu .

Wybitne silniki

  • Firma Apple stworzyła silnik WebKit dla swojej przeglądarki Safari poprzez rozwidlenie silnika KHTML projektu KDE . Wszystkie przeglądarki dla iOS muszą używać WebKit jako swojego silnika.
  • Google pierwotnie używał WebKit do swojej przeglądarki Chrome, ale ostatecznie rozwidlił go, aby utworzyć silnik Blink . Wszystkie przeglądarki oparte na Chromium używają Blink, podobnie jak aplikacje zbudowane przy użyciu CEF , Electron lub dowolnej innej platformy, w której osadzony jest Chromium.

Oś czasu

Pokazywany jest tylko czas trwania aktywnego rozwoju , czyli wtedy, gdy odpowiednie nowe standardy sieciowe są nadal dodawane do silnika.

Bibliografia