Перемещение вверх и вниз по веб-стеку
Когда мое сознание переключилось на сознание, просыпаясь этим утром в Лондоне, я заметил сон, в котором мыши бегали вверх и вниз по клавишам на пианино.
Я думал о том, как приятно видеть, как веб-платформа развивается в обоих направлениях вверх и вниз по стеку.
Вначале был 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 - это фантастический последний пример того, как команда может сделать все возможное для своих пользователей:
Сделайте обычные задачи простыми и сделайте индивидуальные задачи возможными.