UfoStation

Rendering pipeline

Начнем говорить о новой большой теме — Rendering Pipeline.

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

Очевидно, что у каждого браузера могут быть свои особенности в реализации этой последовательности шагов, как и сами шаги, тем не менее, если не вдаваться в детали и смотреть на все из подзорной трубы, то за последние ~10 лет, концептуально, на мой взгляд мало, что изменилось.

Faster HTML and CSS: Layout Engine Internals for Web Developers — доклад 2008 года, упомянутый здесь pipeline относится к браузеру Mozilla

How Browsers Work: Behind the scenes of modern web browsers - популярная статья о работе современных на тот момент браузеров, которой в этом году будет ровно как 10 лет.

На то время rendering pipeline можно было представить как набор следующих шагов:

Parse → Style → Layout → Paint

Спустя еще несколько лет, появляется еще один шаг компоновка, который связан с выделением слоев и прочими вытекающими оптимизациями, и теперь pipeline стал принимать следующий вид:

Parse → Style → Layout → Paint → Compose

О том, что означает каждый шаг и какие конкретные действия за ним стоят будем разбираться далее на примере работы Chromium, а также изредко будем поглядывать в Gecko и Webkit.

Нашли ошибку или опечатку? Предложите исправление

← Вернуться в блог