Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Что такое Web-браузер и как устроен его движок. Разработка серверных приложений для Web

Содержание:

ВВЕДЕНИЕ

Глава 1

Общие понятия:

WWW – World Wide Web, Всемирная паутина.

HTTP – В настоящий момент это протокол для передачи любых данных.

Протокол – Это инструменты или совокупность инструментов, используемые для защиты информации в интернете.

SSL – Криптографический протокол, для безопасной связи.

TLS – Протокол защиты транспортного уровня.

HTTPS – это расширение протокола HTTP, нацеленный на защиту информации, работающий через шифрованные механизмы SSL и TLS.

FTP – Один из самых первых протокол для передачи данных.

NCSA – Национальный центр суперкомпьютерных приложений.

AOL – американский медийный конгломерат, поставщик онлайн-служб и электронных досок объявлений, интернет-пейджера AIM.

IE – Internet Explorer.

JS – JavaScript, язык программирования.

Objective-C – Язык программирования, используемый корпорацией Apple.

HTML – Язык программирования для создания разметки сайтов.

CSS – Вспомогательный язык программирования для HTML, для стилизации сайта.

DNS – Система доменных имён

W3C –Консорциум Всемирной паутины, разрабатывающий и внедряющий технологические стандарты для Всемирной паутины.

Глава 2

Предисловие:

Свое начало браузеры берут в 1990 году, когда Тим Бернерс-Ли создал первый в мире веб-браузер под названием WorldWideWeb, в дальнейшем он был переименован в Nexus, он был написан на Objective-C и обновлялся до 1994 года, а в 1993 его программный код был передан в общественное достояние. WorldWideWeb использовал два протокола HTTP и FTP. В браузере Nexus почти вся информация была представлена в текстовом виде, что делало его использование не удобным, и первым графическим веб-браузером стал NCSA Mosaic, его особенностью стало появлению изображений внутри веб-страницы, а не в отдельном окне.

Так-же появление новых браузеров на основе Nexus, не заставило себя долго ждать и уже в 1994 и 1995 годах, появились такие браузеры как Netscape Navigator и Internet Explorer.

IE использовал несовместимые расширения языка HTML и был предустановлен в операционной системе windows 95 в обновлении OSR2, что стало большим преимуществом и впоследствии привело к монополизации рынка на 95%. Из-за тотальной доминации IE Netscape Navigator, пришлось продать права компании AOL, которая сделала исходный код браузера свободным. Впоследствии AOL создали абсолютно новый движок Gecko изначально ориентировавшийся на полную поддержку стандартов, на основе которого позже были созданы входящие в комплект Mozilla Suite браузер, почтовый и IRC-клиент и редактор веб-страниц, но веб-браузер Mozilla Firefox стал отдельным продуктом и постепенно набирал популярность. Одним из первых веб-браузеров на просторах СНГ стала Opera, которая берет свои корни с 1994 года, браузер стал популярен в СНГ благодаря бесплатному использованию.

2.1 Chrome

Chrome – продукт компании Google, которая в качестве инструментов использовала браузер Chromium и движок Blink. 2 сентября 2008 мир впервые увидел Chrome, и он не сразу завоевал всемирную популярность. Для высокой работоспособности используется движок обработки JS V8, а так-же Chrome может использовать упреждающее чтение DNS. В Chrome используется многопроцессорная архитектура, это позволяет каждой вкладке иметь свой процесс и означает что при сбое одной вкладки, это никак не повлияет на все остальные. Из интерфейса Chrome имеет омнибокс, это адресная строка, которая совмещает в себе и адресную строку и поисковую, страница быстрого доступа, менеджер закладок и позволяет создавать локальные ярлыки на приложения. На данный момент в Chrome есть возможность добавление и создание различных расширений, которые упрощают работу с браузером. Так-же не малым преимуществом является то, что Chrome способен самостоятельно переводить страницы с одного языка на другой, данная функция использует другой сервис от Google – Google Переводчик и ее так-же можно отключить. Еще одной функцией является генерация новых паролей и их сохранения для дальнейшего использования. На момент марта 2020 года он является самым популярным браузером в мире и занимает 63.69% всего рынка.

2.2 Yandex

Yandex – Самый популярный русский браузер был появился на свет в 2010 году на основе Chromium и назывался он Яндекс.Хром. Потом его ждали некие изменения от названия до логотипа. В наши дни Яндекс является вторым по популярности в СНГ и занимает он это место по многочисленным полезным сервисам, и постоянными обновлениями, которые улучшают его работоспособность. Особенностями браузера являются множество полезных функций, как поиск слова с учетом морфологии, Яндекс является единственным браузером с такой функцией, умная строка при поиске, поддержка расширений от других браузеров, встроенный переводчик, советник, жесты мышью, и панель быстрого доступа, которое у в браузере называется таблом. Одним из самых важных функций, является голосовой ассистент Алиса, которая готова помочь пользователю в любой момент. Так-же большое значение имеет поддержка всех дочерних сервисов компании. Для безопасности была создана технология Protect, она включает в себя  шифрование данных, передаваемых по каналу WiFi, защиту паролей, антивирусные технологии, SafeBrowsing. Яндекс.Браузер проверяет все загружаемые файлы на наличие вирусов. Яндекс.Браузер блокирует страницы, подозреваемые в SMS-мошенничестве. Яндекс.Браузер предупредит, если пользователь попытается ввести пароль от известного сайта на незнакомой странице.

2.3 Mazilla FireFox

Mazilla FireFox – Это продукт компании  Mozilla Foundation и последователь одного из первых браузеров Netscape появившийся в 9 ноября 2004 году. В браузере используют свободный портируемый движок Gecko и может разрабатываться всеми людьми по всему миру. Главной особенностью браузера, является то, что Firefox позволяет пользователю самостоятельно модифицировать браузер для их задач с помощью механизмов расширений. Так-же он имеет ряд функций как блокировка всплывающих окон, встроенная панель поиска в поисковых машинах и словарях, почти неограниченные возможности по настройке поведения и внешнего вида, в том числе за счёт использования расширений, тем и стилей, поддержка множества расширений (для Firefox их создано многократно больше, чем для любого другого браузера), встроенные инструменты для веб-разработчика, безопасное хранение паролей для сайтов и сертификатов. Для защиты от фишинга и других вредоносных сайтов используется база данных SafeBrowsing Google. По умолчанию она скачивается примерно каждые полчаса. Еще в браузере используется движок Quntum, в него входят наработки нынешнего движка и экспериментального высокопроизводительного движка Servo с новыми возможностями по обеспечению безопасной многопоточной обработки данных, так-же в него ходяд ускорение операций форматирования, устранение багов, ускорение отображения сайтов, аппаратное ускорение рендеринга, распределение задач в разных вкладках и многопроцессорный режим. Сейчас Mazilla Firefox является третим в мире по популярности и имеет 3.36%.

2.4 Internet Explorer

Internet Explorer – и первый браузер компании Microsoft который разрабатывался с 1995 года по 2015 до выхода Microsoft Edge, в начале своего пути самый популярный браузер, который благодаря предустановленности в операционной системе Windows и “своего пути” завоевал множество пользователей и выиграл “Войну браузеров”. Но на дистанции разработчики перестали должным заботится о обновлениях и прочих дополнений, из-за которых его заменили множество новых браузеров, которые использовали новейшие функции и приносили в индустрию новые идеи. Microsoft предложила ряд собственных стандартов, что привело к некорректному отображению содержания в других браузерах. На данный момент является устаревшим и его перестали поддерживать, является базовым браузером для ОС Windows некоторых поколений, а также android. Что касается движка, то самая первая версия IE была основана на Spyglass, позже для версии IE 4 движок был изменен на Trident, после изменялась только версия движка, а, следовательно, и браузера. В 2013 вышла последняя версия IE с номером 11, на тот момент в нем был установлен движок Trident 7.0. На сегодня многие сайты отказались полноценно поддерживать IE.

2.4 Opera

Opera – Популярный браузер по всему миру, история создания которого началась в 1995 году. Сейчас же он имеет множество функций, например: Встроенный сервис VPN обеспечивает безопасность в интернете Возможность пересекать активность онлайн-трекеров, ограждая свою работу в сети от посторонних взглядов. Встроенная блокировка рекламы ускоряет работу в сети Блокировка рекламы помогает избавиться от назойливых баннеров. Кроме того, она блокирует майнинг криптовалют и позволяет страницам загружаться быстрее. Возможность синхронизации аккаунтов, персонализация новостей встроенный мессенджер для активных пользователей Opera, специальный инструмент для создания снимков экрана, встроенный конвертор разных величин, также вы можете настроить и то, сколько ресурсов вашего компьтера будет потреблять браузер. GX Control позволяет ограничивать использование браузером оперативной памяти, ресурсов ЦП и сети. GX Control позволяет выбирать, сколько RAM использует Opera GX. По умолчанию, ограничитель RAM направлен на обеспечение баланса между использованием памяти и качеством работы в сети. Ограничитель CPU позволяет установить лимит на количество процессов вашего компьютера, которые использует браузер. Цель обеих функций GX Control - дать возможность всегда держать браузер открытым, даже если вы заняты ресурсоемкой работой. Всплывающее окно: видео будет воспроизведено в отдельном всплывающем окне на фоне ваших вкладок и других приложений.

Глава 3 Движки

3.1 Webkit

Пожалуй, самый распространённый движок, широко используемый в современных браузерах, это Webkit. Этот движок «следит за модой» и совмещает в себе все новшества мира веб-разработок. Движок обладает исключительной простотой использования и настройки, использует понятный и доступный интерфейс. На нём работают такие браузеры как Google Chrome (с версии 28 вариант Webkit от Google называется Blink), Яндекс. Браузер, Safari, Рамблер Нихром, Mail.ru Хром, SrWare Iron, Maxthon, встроенные браузеры на Андроид-смартфонах и планшетах, и в другие. Разрабатывается корпорацией Google и сообществом разработчиков по всему миру. Новые CSS-свойства, ещё не успевшие попасть в стандарт W3C, поддерживаются в нём с префиксом -Webkit.

3.2 Gecko

Gecko   движок, ориентированный на улучшенную поддержку стандартов. Пытается использовать все новшества, но в отличии Webkit работает медленней. Весь браузер работает единым процессом, из-за чего может подтормаживать и падать. Разрабатывается некоммерческой организацией Mozilla Foundation. Новые свойства CSS поддерживаются с префиксом -moz. Используется в браузерах Firefox, Konqueror, K-Meleon.

3.3 Presto 

Presto — движок, который характеризуется наиболее быстрой работой JavaScript. Не отличается особенной быстротой в целом, однако довольно легковесный и работает без проблем даже на старых компьютерах. В памяти представляет один процесс, из-за чего может при некоторых условиях виснуть — это компенсируется автоматическим открытием всех открытых до зависания вкладок. Распознаёт большинство нововведений weckit, но не все они работают правильно. Presto использует Opera. Новые свойства CSS поддерживаются с префиксами -o, -webkit.

3.4 Trident 

Trident — самый отсталый среди современных технологий движок. Самые новые свойства CSS и теги HTML5 в нём появляются редко, а чаще тогда, когда они уже реализованы в других браузерах. Последняя версия в скорости работы не отстаёт от других браузеров, в то же время максимально интегрируется в Windows. Из плюсов: работает в нескольких процессах, что увеличивает стабильность. Стандарты W3C поддерживает не полностью. Новые свойства CSS иногда поддерживаются с префиксом –ms, на этом движке работает браузер Internet Explorer (IE) корпорации Microsoft. На данный момент поддержка этого браузера остановлена, а в 2015 году Microsoft представила новый браузер Microsoft Edge.

3.5 Рейтинг популярности браузерных движков:

Webkit — 38,6%
Presto — 26,5%
Gecko — 18,7%
Trident — 11,2%

3.6 Собственный движок

Прежде всего стоит ответить на главный вопрос — зачем создавать свой браузерный движок? А точнее, кому не надо создавать свой движок?

Свой браузерный движок не стоит создавать если:

  • Нет задачи/стремления захватить рынок.
  • Браузер нужен лишь номинально. Сейчас это модно, делают даже школьники.
  • Создаваемый движок не будет отличаться от существующих: скорость, надёжность, адаптивность.
  • Идёт освоение бюджета

На текущий момент нет сложности создать собственный браузер на стороннем движке. Их наплодилось не мало и как-то выделиться среди всей этой массы можно только созданием браузера на исключительно своих компонентах, на собственном движке.

Blink

Google, Opera, Samsung, Intel и прочие

Google Chrome, Opera 15+, Microsoft Edge

C++

EdgeHTML

Microsoft

Microsoft Edge

C++

Gecko

Netscape/Mozilla Foundation

Mozilla Firefox

C++

GtkHTML

GNOME

Novell Evolution

C

KHTML

KDE

Konqueror

C++

Presto

Opera Software

Opera

C++

Prince XML

YesLogic Pty Ltd

Prince XML

Mercury

Robin

Ritlabs

The Bat!

Delphi

Tasman

Microsoft

Microsoft Entourage

Trident

Microsoft

Internet Explorer

C++

WebKit

KDE, Apple, Nokia, Google, RIM, Palm и другие.

Google Chrome, Safari

C++

XEP

RenderX

XEP

Java

Движок

Первая тестовая сборка

Первая стабильная сборка

Последняя сборка

Дата

Версия

Дата

Версия

Дата

Версия

Gecko

7 декабря 1998

без номера

19 марта 1999

M3

6 июня 2016

50.0a1

GtkHTML

2000

?

2000

?

14 декабря 2009

3.28.2

KHTML

октябрь 2000

?

октябрь 2000

?

6 июня 2014

4.13.2

Presto

13 ноября 2002

1

28 января 2003

1

16 марта 2015

2.12.423

Prince XML

апрель 2003

1

апрель 2003

1

октябрь 2009

7

XEP

1999

fo2pdf

?

?

март 2010

4.18

Robin

27 апреля 2000

1.32

27 апреля 2000

1.32

24 августа 2009

4.2.10

Tasman

27 марта 2000

0

27 марта 2000

0

11 мая 2004

1

Trident

апрель 1997

без номера

октябрь 1997

без номера

19 марта 2009

4

WebKit

7 января 2003

48

23 июня 2003

85

-

Subversion

Engine

Windows

Mac OS X

Linux

BSD

Unix

Symbian OS

Android

WebKit

Да

Да

Да

Да

Да

Да

Да

Gecko

Да

Да

Да

Да

Да

Да

Да

GtkHTML

Да

Да

Да

Да

Да

Нет

Нет

KHTML

Да

Да

Да

Да

Да

Да

Да

Presto

Да

Да

Да

Да

Да

Да

Да

Prince XML

Да

Да

Да

Да

Нет

Нет

Нет

XEP

Да

Да

Да

Да

Да

Нет

Нет

Robin

Да

Нет

Нет

Нет

Нет

Нет

Нет

Tasman

Нет

остановлена (5.2.3)

Нет

Нет

Нет

Нет

Нет

Trident

Да

Нет

Нет

Нет

Нет

Нет

Нет

EdgeHTML

Да

Нет

Нет

Нет

Нет

Нет

Нет

В заключении хочется сказать, что браузеры, из-за конкуренции и борьбы за пользователей, очень быстро изменяются, каждый год внедряются новые технологии или функции, которые делают браузер исключительным.

Спасибо за внимание!