Перемещение вверх и вниз по веб-стеку

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

Я думал о том, как приятно видеть, как веб-платформа развивается в обоих направлениях вверх и вниз по стеку.

Вначале был HTML для определения документов. Затем мы добавили стили с помощью CSS и динамическое поведение с помощью ‹script›.

Мы стремились сосредоточить решение в одном из миров, и между мирами было несколько связей.

Анимация

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

Это было sloooooow. Как насчет того, чтобы мы могли объявить анимацию и позволить браузеру делать всю работу? А потом мы закончили с переходами и анимацией CSS. На помощь приходит GPU.

Но что, если мы хотим совершить какое-то движение, которое не соответствует возможностям CSS? Фу.

Вы хотите лучшего из миров. Для общих идей, которые вы можете объявить, вы можете отказаться от CSS и сделать это, однако, если вам нужно что-то большее, было бы неплохо написать сценарий поверх производительного движка браузера, а не пытаться делать все самостоятельно (и медленно )?

Мы приближаемся к этому месту. С веб-анимацией у нас на какое-то время было объединение декларативного и императивного, и благодаря работе, проводимой в Houdini, мы сможем пройти еще больше через аварийный люк, чтобы добиться максимальной полировки.

Например, с помощью рабочего-композитора вы можете попросить браузер держать вас в курсе определенных элементов DOM. Это может позволить вам поддерживать синхронизацию элементов, чтобы вы могли поддерживать 60 кадров в секунду, когда ваш пользовательский интерфейс течет следующим образом:

Сервисные работники

Как вы хотите работать с обслуживающими работниками? В зависимости от вашего варианта использования и того, как вы любите работать, вы можете предпочесть регистрацию сервис-воркера через javascript вашего приложения:

navigator.serviceWorker.register (‘/ sw.js’). then (function () {
// Теперь вы управляете всеми страницами в источнике!
});

Или вы можете захотеть объявить сервис-воркера из некоторого HTML:

‹Ссылка rel =” serviceworker ”href =” / serviceworker.js ”›

Есть много других областей, где это возникает. Если платформа имеет возможность создавать собственный элемент, было бы неплохо иметь возможность зарегистрировать свой собственный элемент как декларативно, так и императивно.

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

Streams - это фантастический последний пример того, как команда может сделать все возможное для своих пользователей:

Сделайте обычные задачи простыми и сделайте индивидуальные задачи возможными.