Блинк: за кулисами

Blink — это движок рендеринга Chrome с открытым исходным кодом. Команда Blink развивает сеть и решает проблемы, с которыми сталкиваются разработчики.

С момента нашего апрельского запуска был запущен ряд скрытых улучшений.

Первое, что мы сделали, это удалили половину нашего исходного кода, который нам не обязательно был нужен. Мы еще не закончили! И мы не делаем это вслепую: удаление кода основано на анонимной сводной статистике от пользователей Chrome, которые согласились на отчетность.

Мы публикуем новый API разработчика каждые шесть недель: так же, как график поставок Chrome.

Когда мы отделились от Blink, мы сделали одно большое изменение: добавили систему намерений: каждый раз, прежде чем мы собираемся изменить веб-платформу, мы отправляем публичное объявление разработчику Blink , объявляя о своем намерении добавить или удалить функцию. Затем мы уходим, и мы кодируем это! А затем, на следующий день после того, как эта функция была проверена, она уже доступна в наших сборках Canary. Эта функция отключена по умолчанию, но вы можете включить ее, используя about:flags.

Затем в нашем общедоступном списке рассылки мы объявляем о намерении отправить .

На chromestatus.com вы можете увидеть функции , над которыми мы работали, функции, которые мы добавили, и функции, поддержку которых мы планируем прекратить. Вы также можете проверить блог Chromium Releases , в котором есть ссылки на ошибки и на нашу панель отслеживания.

Еще одно большое изменение заключается в том, что мы удаляем префиксы WebKit. Цель состоит не в том, чтобы использовать префиксы Blink, а в том, чтобы иметь флаги времени выполнения (а не только флаги времени компиляции).

Android WebView был большой проблемой, но HTML5Test показывает, что дела идут лучше. Мы гораздо ближе к настольным компьютерам с точки зрения наличия единого набора API-интерфейсов веб-платформы повсюду (веб-аудио — отличный пример этого!)

Но как работает колбасная машина? Каждое отдельное изменение, которое мы вносим в Blink, сразу же проходит более 30 000 тестов, не говоря уже обо всех тестах Chromium, которые выполняются позже. Мы используем 24-часовой контроль с тысячами ботов, тысячами тестов и системами, которые бросают миллионы неработающих веб-страниц в наш движок, чтобы убедиться, что он не упадет. Мы знаем, что мобильные устройства значительно медленнее, и мы прилагаем все усилия, чтобы это улучшить.

Так что нового?

  • Веб-компоненты : прочтите выступление Эрика Бидельмана!
  • Веб-анимация: сложная, синхронизированная, высокопроизводительная анимация, по возможности использующая графический процессор.
  • Частичная компоновка: вычисляйте только то, что вам нужно!
  • CSS-сетка
  • Адаптивные изображения: srcset или srcN или ?
  • Более быстрое автоматическое изменение размера текста и согласованные субпиксельные шрифты.
  • Skia, графическая система, используемая Blink, переходит с GDI на DirectWrite в Windows.

Мы хотим знать, что вы хотите сказать!

Если вы чувствуете C++ в своей крови и хотите писать C++ вместе с нами, весь наш код открыт. Вам не нужно никому рассказывать или проповедовать нам. Вы можете просто опубликовать патч или сообщить об ошибке !

Слайды: мигание