Ответ на пост «Или не имеет смысла»
Доступно об АйТи: Почему осталось всего два браузерных движка
Я застал время, когда движков было четыре: Trident (IE), Gecko (Firefox), WebKit (Chrome) и Presto (Opera).
Ныне осталось два: Quantum (Firefox) и Blink (Chrome).
На первом работают специализированные «лисицы» вроде какого-нибудь полностью освобождённого IceWeasel или защищённого Tor Browser. На втором — целая плеяда хромоидов вроде Opera, Vivaldi, Brave и (тьфу-тьфу) Амиго, а также куча софта вроде Steam и Slack, представляющие собой браузер, показывающий единственный сайт.
А причины две — крайняя сложность и проникшая в веб-стандарты защита от копирования.
Сложность
Я по крайней мере в браузере вижу такие основные части.
Сетевая подсистема — обращение к сети, поддержка протоколов.
Движок рендеринга — показ страниц.
Типографский движок — вывод текста.
Движок скриптинга — выполнение JavaScript.
Фреймворк безопасности — дополнительная защита от ошибок.
Когда человек пишет мини-браузер, предназначенный для показа каких-то текстов в его проге, он пишет только одно — рендерер, причём не с веб-качеством.
«С веб-качеством» означает: настолько защитное программирование, что маловероятно, что обнаружится критичная ошибка. Кстати, Rust — новый язык программирования, набирающий силу — был сделан именно для Firefox, чтобы уменьшить вероятность таких ошибок.
Скорость тоже важна — долго Firefox тормозил на системе отслеживания ошибок Jira.
Собственный типографский движок позволяет рендерить загружаемые шрифты, снижает риск критичной ошибки при рендеринге сложных строк и раньше всех поддерживает новые версии Юникода. Так уж вышло, что ставший де-факто стандартом формат шрифтовых инструкций OpenType определённые свойства символов берёт из типографского движка — в отличие от альтернативного Graphite, который всё своё носит с собой.
В сентябре 2024 года в Юникод добавили гарай — экспериментальную (уступившую латинице и нко) африканскую письменность. Юникод устроен так, что проги давным-давно знают, что определённый диапазон кодов зарезервирован под письменности справа налево, но с умляутами беда. Firefox первым корректно поддержал гарай около Нового 2025 года, a хромоиды всё ещё (октябрь 2025) не поддерживают.
Кстати, типографский движок у всех браузеров один — Skia за авторством Гугла. Просто Рыжая добавила в него свежие базы Юникода, а авторы хромоидов — нет.
Почти все сайты заскриптованы так, что превратились в настоящие программы, и браузер должен уметь выполнять эти программы корректно и быстро. Оба движка, Blink и Quantum, не просто интерпретируют JavaScript, но и умеют компилировать его в процессорный код!
Наконец, фреймворк безопасности — сравнительно новое (десять лет в обед 😊) изобретение Гугла, впоследствии реализованное и Firefox в своём Quantum. Уязвимости случаются, и задача этого компонента — сделать, чтобы «пробитая» память не доросла до критической уязвимости. Для этого браузер раскидывает работу по процессам с минимальными правами, в результате ошибки закрываются без особого шума, браузер редко зависает целиком, никогда не «падает» и потребляет уйму памяти. 😊
Если вы писали расширения браузера, то знаете, что есть центральный скрипт и скрипт вкладки, и между ними общение только сообщениями — это тоже «вина» фреймворка безопасности.
Защита медиаконтента от копирования
У нас не важно, на Западе — очень.
Скорее всего, была пролоббирована Netflix. До этого он использовал Silverlight, и часто этот странный плагин устанавливали только для того, чтобы смотреть Netflix. Существуют три подсистемы защиты: Microsoft, Apple и Google; все хромоиды и Firefox управляются последней. Гугл даёт ключи неохотно: появившийся в 2015 году Vivaldi только в 2020-м отпраздновал включение в гугловский Widevine.
Главное препятствие для написания своей системы — убедить киношников доверять ей.
Как-то так. Когда-то самолёты строили в гаражах, сейчас нельзя. По моим прикидкам, некоторые отрасли являются таким хайтеком, что для прибыльности нужен едва ли не целый мир, и устойчивая конфигурация там — один лидер и один аутсайдер, не дающий лидеру заламывать любые условия. И Гугл намеренно содержит аутсайдера Firefox: останется один — государства на него обрушатся и/или вырастет значительно менее удобный для него аутсайдер.
Ответ на пост «Или не имеет смысла»
Тем временем сообщество пилит браузер Ladybird. Движок полностью свой, не основан ни на Blink (Chromium), ни на Gecko (Firefox), ни на WebKit. Браузер пока в глубокой альфе, но уже можно скомпилировать и посмотреть, как оно выглядит. Кто умеет работать с кодом - может внести свой посильный вклад.
Или не имеет смысла
ENIGMA AI v.1.1.5 — ИИ помощник для IT-собеседований. Подсказывает ответы в реалтайме, невидим при шаринге экрана → enigmai.ru. Подстрахуй себя на собеседовании.



