Почему фронтенд это круто• webgl • webassebly • ... пора...

114
Почему фронтенд это круто ! Роман Дворнов Санкт-Петербург, июль 2019 Revision 2

Upload: others

Post on 03-Jun-2020

19 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Почему фронтенд это круто !

Роман ДворновСанкт-Петербург, июль 2019

Revision 2

Page 2: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Занимаюсь вебом с 1999

Только фронтедом с конца 2012

Работал в Avito, Ostrovok, Wallet One

Open source проекты: csstree, CSSO, discoveryjs, jora, hitext, basis.js, rempl и другие проекты

github.com/lahmatiy

rdvornov

Page 3: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Фронтенд –круто или не круто?

Page 4: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Фронтенд – круто

Page 5: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Фронтенд – не круто

Page 6: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Фронтенд крут, потому что...• Мощные технологии

• На стыке дизайна и технологии

• Активно развивается

• В слайдах фронтендеров есть пони и котики

• ...

6

Page 7: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

О чем поговорим• На чем держится фронтенд

• Почему это круто

• Фронтенд мертв?

• Что дальше?

7

Page 8: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Киты фронтенда

Page 9: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Киты фронтенда

9

CSS JavaScriptHTML DOM

Page 10: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

HTML

Page 11: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

HTML простой и толерантный

11

Page 12: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

HTML простой и толерантный

11

Page 13: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

<img src="cat.jpg">

12

Page 14: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

<img src="cat.jpg">

12

Page 15: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

<img src="cat.jpg">

12

Page 16: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Браузер делает всю работу ...• Загружает файл (протоколы, кодировки, ...)

• Декодирует изображение (форматы)

• Кеширует, управляет памятью...

• Масштабирует изображение используя подсказки или что вместилось во вьюпорт

• ...

13

Другие технологии обычно перекладывают это все на программиста...

Page 17: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Декларативность Думаем о результате, а не технических проблемах

14

Page 18: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Фома

15

<form method="post" action="//example.com/comment"> Name: <input name="name"><br> Email: <input name="email" type="email"><br> <textarea placeholder="Your comment" name="comment"></textarea><br> <button type="submit">Post a comment</button> </form>

Page 19: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Фома

15

<form method="post" action="//example.com/comment"> Name: <input name="name"><br> Email: <input name="email" type="email"><br> <textarea placeholder="Your comment" name="comment"></textarea><br> <button type="submit">Post a comment</button> </form>

Page 20: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Фома

15

<form method="post" action="//example.com/comment"> Name: <input name="name"><br> Email: <input name="email" type="email"><br> <textarea placeholder="Your comment" name="comment"></textarea><br> <button type="submit">Post a comment</button> </form>

Вжух... форма, которая умеет отправлять данные на сервер!

Page 21: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

И снова• Ни строчки кода (только разметка)

• Не нужна компиляция сохранили в файл – открыли в браузере

• Простая валидация вводанапример, <input type="email">

• Явно не делаем сетевой запрос, не кодируем данные

• ...

16

Покажите другую технологию, где подобное сделать так же просто!

Page 22: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

И так во всем!Разметка текста, ссылки, списки, таблицы,

медиа-файлы, формы, семантика, доступность...

17

Page 23: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Текст с разметкой

18

Заголовки, параграфы, ссылки, изображения...

Браузер Desktop/Native

✅ HTML ???

Page 24: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Текст с разметкой

18

Заголовки, параграфы, ссылки, изображения...

Браузер Desktop/Native

✅ HTML ???

# WebView

Page 25: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Генерируемый сервером контент

19

Например, динамические формы

Браузер Desktop/Native

✅ innerHTML = "..." ???

Page 26: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Генерируемый сервером контент

19

Например, динамические формы

Браузер Desktop/Native

✅ innerHTML = "..." ???

$ Космолет

Page 27: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Генерируемый сервером контент

19

Например, динамические формы

Браузер Desktop/Native

✅ innerHTML = "..." ???

$ Космолет# WebView

Page 28: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Многие фичи существуют годами, но многие о них не знают

20

Много деталей, нюансов – обширная тема, серьезная история

Page 29: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

HTML5 html.spec.whatwg.org

21

Не только ценный мех «теги», но и множество API(Web storage, WebWorker, SSE, WebSocket...)

Начните сегодня!

Page 30: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

22

%HTML – это круто!

Page 31: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

CSS

Page 32: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

CSS простой и толерантный

24

Page 33: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

CSS простой и толерантный

24

Page 34: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Знать синтаксис* ≠ знать CSS

25

* Тем более базовый

Page 35: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Почему мне можно верить...• 20 лет знаком с CSS

• Много верстал сайты, SPA, компоненты...

• Читал и продолжаю дотошно вычитывать спеки

• Автор CSSTree парсер со свистелками

• Мейтенер CSSO компрессор CSS

• ... 26

Page 36: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

&

27

До сих пор для себя открываю новое в CSS Все больше проникаюсь

Page 37: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Возможности CSS• Базовое форматирование

цвет, жирность, курсив, отступы, ...

• Типографикакастомные шрифты, шрифтовые опции, ...

• Декоративное оформлениефон, рамки, градиенты, тени, ...

• Генерируемый контент pseudo elements, content, counters, ......

28

• Лейаутdisplay, float, multi column, flex, grid, ...

• Интерактивностьhover, cursor, user-select, snap-points, ...

• Анимацияtransition, animation

• Адаптивность@media, image-set, ... ...

Page 38: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,
Page 39: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Знание CSS определяет• Кол-во элементов в разметке и ее перегруженность

• Адаптивность к контенту и другим условиям (гибкость)

• Кол-во изображений (запросы к серверу)

• Возможность обходиться без JavaScript

• Объем CSS, поддерживаемость, переиспользование

• Производительность верстки

• ... 30

Page 40: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Немного красоты

Page 41: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Создано с помощью CSS

Pure CSS Francine

Page 42: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

species-in-pieces.com

Page 43: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

CSS – язык программирования?

Page 44: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

twitter.com/chriseppstein/status/1134599586775855104

Page 45: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

www.kizu.ru/variable-order

Сортировка таблицы с помощью CSS

Page 46: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

CSS-Only Chat Асинхронный веб чат без использования JavaScript на клиенте

Page 47: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

CSS is a Domain-specific, Declarative Programming Language

38

– Lara Schenck

notlaura.com/css-is-a-programming-language

Большое исследование

Page 48: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

CSS алгоритмы

39

notlaura.com/writing-css-algorithmsТо, как мы добиваемся результата

Page 49: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

CSS – язык программирования

40

Непохожий на другие Программируем отображение, интерактивность,

анимацию, его так же нужно отлаживать, оптимизировать и пр.

Page 50: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

%

41

CSS – это круто! от синтаксиса до его возможностей

Page 51: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

JavaScript

Page 52: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

JavaScript много критикуют Обоснованно ли?

43

Page 53: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

JavaScript 1995 год, Brendan Eich, 1 неделя

44

Page 54: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

ES3 1999 год

45

Каким большинство знают язык

Page 55: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

ES5 2009 год

46

Уточнения, strict mode, расширение стандартной библиотеки, reflection для свойств...

Page 56: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

ES6/2015+ с 2015 года

47

Классы, модули, promise, async/await, итераторы, генераторы, символы, proxy, typed arrays, collections, синтаксический сахар и

расширение стандартной библиотеки...

Page 57: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Когда появились первые SPA?

48

Gmail

Какой год?

«... оснащён революционным интерфейсом на основе технологии Ajax ...» – Wikipedia

Page 58: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Когда появились первые SPA?

48

Gmail

2004«... оснащён революционным интерфейсом на основе технологии Ajax ...»

– Wikipedia

Page 59: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Когда появились первые SPA?

49

Google Maps

Какой год?

Page 60: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Когда появились первые SPA?

49

Google Maps

2005

Page 61: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Возможности инструмента определяются умением его использования

50

Page 62: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Писать эффективный JS, значит...• Computer Science

алгоритмы, структуры данных, паттерны...

• Знать как работают JS движкиCompilator, Gabage Collector, ...

• Отлаживать

• Профилировать

• ... 51

Page 63: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

У JS много плюсов• Активное развитие языка

• Проникновение на другие платформыnodejs, electron, да везде!...

• Большое количество библиотек и фреймворков

• Богатый набор инструментов

• ... 52

Page 64: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

53

%JavaScript – это круто! умеет много, активно развивается

Page 65: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

DOM

Page 66: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Про DOM часто забывают $

55

Page 67: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

jQuery React

Angular Ember

Vue ...

'( Фронтендеры

) DOM

Page 68: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Много мифов и легенд

57

Page 69: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

С нами давно• DOM1 – 1998

• DOM2 – 2000 Core, Events, Style, Traversal and Range, HTML

• DOM3 – 2004 Core, Events, XPath

• DOM4 – 2015

58

Page 70: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

59 Project VisBug

Page 71: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

DOM не медленный! Обычно его неправильно используют

60

Page 72: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

61

%DOM – это круто! большие возможности

Page 73: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Подытожим

Page 74: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

У фронтендеров крутой стек базовых технологий

63

Page 75: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

• HTML – крутой

• CSS – крутой

• JavaScript – крутой

• DOM – крутой

64

# Все круто!

Page 76: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Есть еще• WebGL

• WebAssebly

• Service Workers

• WebWorker

• IndexedDB

• ... 65

Page 77: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Заметьте, ни слова про фреймворки

66

Современный набор возможностей фронтендера позволяет обходиться без фреймворков

#

Page 78: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Вместо фреймворков лучше изучать...• Computer Science

• Как работают браузеры

• Сетевые технологии, протоколы

• Работа с графикой (canvas), форматы

• SVG

• nodejs

• ... 67

Page 79: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Фронтенд не только технологии

Page 80: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

ДизайнТехнологии

Фронтенд

Page 81: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Обычно так

70

– Почему вы решили заниматься фронтендом? – Мне нравится видеть результат своей работы...

Page 82: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

71

%ФронтендерДизайнер

Бекендер Тестировщик

Менеджер ...

ПользовательИнтерфейс (сайт)

Page 83: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Можно и нужно быть художником

72

*+

Хотя бы немного

Page 84: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Полезно изучать...• Принципы дизайна

• Принципы UX

• Принципы анимации

• Типографику

• Доступность

• Редакторское мастерство

• ... 73

Page 85: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Frontend

Page 86: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Фронтенд мертв, пора валить из фронтенда?

75

Page 87: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Фронтенд эволюционирует, простые проблемы заканчиваются

76

Просто так не хайпануть, да

Page 88: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Да, есть проблемы, но они решаются

77

Я наблюдаю за эволюцией веба на протяжении 20 лет,прогресс колоссальный!

Page 89: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Мы здесь

Page 90: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Что будет во фронтенде дальше?

Page 91: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Нас ждет впереди• Web Components ➝ HTML

• CSS Houdini ➝ CSS

• WebAssembly ➝ JavaScript

80

Page 92: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Web Components

Page 93: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Поддержка браузерами

82

webcomponents.org

Page 94: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

, Все круто, но...

83

Нужен JavaScript, не прозрачно для поисковиков ➝ мало кто использует

Page 96: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Когда: 1–3 года

85

Page 97: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,
Page 98: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

CSS Houdini• Houdini: Maybe The Most Exciting Development

In CSS You’ve Never Heard Of (EN)Статья Philip Walton (2016)

• Houdini — CSS, который JavaScript (RU)Слайды Nikita Dubko

• github.com/nucliweb/awesome-css-houdini A curated list of Houdini resources

87

Page 99: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Сейчас

88

Page 100: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

В будущем

89

Page 101: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Это изменит то как мы...• делаем сложный лейаут

• "рисуем" оформление и эффекты

• делаем анимацию

• расширяем синтаксис CSS

• ...

90

Page 102: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Когда: 2-4 года

91

ishoudinireadyyet.com

Page 103: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,
Page 104: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Поддержка браузерами

93

webassembly.org

Page 105: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Современный WebAssembly – это MVP

94

Page 106: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Когда: 1-3 года

95

webassembly.org/docs/future-features

19новых «фич»!

Page 107: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

One more thing...

Page 108: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Тренды• Больше полезных инструментов

• Больше низкоуровневых API

• Рассвет DSL & AOT решения

97

* Domain Specific Language & Ahead Of Time

Page 109: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Нас ждет впереди• Web Components ➝ HTML

• CSS Houdini ➝ CSS

• WebAssembly ➝ JavaScript

98

Page 110: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

3 секрета чтобы фронтенд был крутым

Вместо заключения...

Page 111: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

% Любить

100

Фронтенд, конечно! Воспитывать в себе художника

Page 112: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

'( Практиковать

101

Кодить, верстать, рисовать дизайн, UX, тексты, SEO, бекенд, безопасность и тд и тп

Page 113: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

-./ Учить

102

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

Page 114: Почему фронтенд это круто• WebGL • WebAssebly • ... пора валить из фронтенда? 75. Фронтенд эволюционирует,

Фронтенд это круто!

Roman Dvornov rdvornov lahmatiy [email protected]