Pull to refresh

Google поздравляет всех с днём веб-мастера новым движком рендеринга

Website development *Open source *Google Chrome
Конечно, в США ещё день веб-мастера не наступил, но к празднику в интернет-гиганте подготовились на отлично, со свойственным циничным чувством юмора (весть о закрытии YT на первое апреля это наглядно демонстрирует). Итак, встречайте: Google Blink — принципиально новый движок рендеринга для Google Chrome.

Так как сарказма на сегодня хватит, то к делу:
  • Blink — движок с открытым исходным кодом, мейнтейнером которого становится, конечно, Google
  • Blink по сути тот же форкнутый WebKit. Google уже заменила львиную часть внутреннестей Apple WebKit из апстрима (тот же V8, Skia, сетевой стек в апстриме отсутствуют), поэтому заменить и сам движок — ожидаемый ход
  • Для веб-разработчиков обещают, что они даже перехода толком поначалу не заметят

Можно, конечно, считать причиной перехода, что у WebKit есть основной дефект — он сделан не в Google, но Адам Барт, знакомый многим по многочисленным коммитам в WebKit, сообщает, что дело в том, что модель многопроцессности в Chromium стала слишком сложной, чтобы тянуть легаси-код из основного WebKit, поэтому было принято решение об окончательном форке движка. В процессе избавления от легаси, было выброшено 4.5 миллиона строк кода.

Ключевые положения, интересные разработчикам:
  • Google не будет использовать проприетарные префиксы для разрабатываемых спецификаций. Спека будет использоваться разработчиками Blink без префикса, но спрятанная. Для активации придется либо в экспериментальных параметрах включать спеку, либо через командную строку
  • Введение новых спецификаций HTML/CSS/JS будет проводиться в соответствии с панелью функций Chromium
  • Новый движок позволит безболезненно гуглерам ввести фичу, позволяющую запускать части одной страницы в разных процессах
  • Перенос DOM в JavaScript. По идее работа DOM должна стать намного быстрее, чем в самом WebKit
  • Разберутся наконец с утечками памяти путём удаления абстракций ScriptValue/ScriptState, которые были нужны в WebKit для двух разных движков выполнения JS

Подробности в записи разработчиков Chromium.
Баг-трекер остаётся стандартным от Chromium.
Ковырять-компилять тут.
Если вы загорелись использовать Blink в своих проектах, то тут небольшое разочарование, потому что движок слишком плотно привязан к кодовой базе Chromium, поэтому без неё Blink фактически бесполезен. Тем не менее, можно будет использовать наиболее лёгкий Chromium Embedded Framework.

P. S. Линус Апсон, известный в первую очередь по Google V8, сообщил, что название движка тоже не просто так выбрано.
Тег blink был одним из самых ужасных тегов, внедрённых в HTML, поэтому мы назвали движок по имени тега, который движком не поддерживается. Так, например, наш флагманский Chromebook мы назвали Pixel, потому что стремились сделать пиксель невидимым. Так что многие ветераны веб-разработки вспомнят былое и посмеются над тем, что, наконец, ушло.
Tags:
Hubs:
Total votes 113: ↑106 and ↓7 +99
Views 58K
Comments Comments 77