Динамика и иммутабельный flow

Сделаем нашу статическую страницу динамической. Добавим таймер для виджета часов. Сделаем отложенную загрузку лотов из API. Реализуем обновление цен в реальном времени.

Рассмотрим проблемы классического подхода прямого изменения DOM-элементов и перейдём на иммутабельные компоненты. Уберём лишние зависимости и переведём фронтенд на однонаправленный поток управления.

  • 00:00:56 - Постановка задачи
  • 00:01:53 - Добавление таймера
  • 00:02:39 - Прямое изменение значения
  • 00:05:21 - Усложнение виджета
  • 00:08:41 - Проблема копипасты логики
  • 00:09:27 - Унификация рендеринга
  • 00:12:02 - Пересоздание компонента
  • 00:15:47 - Перегенерация страницы
  • 00:18:23 - Унификация процедуры render
  • 00:19:04 - Способы модификации состояния
  • 00:21:49 - Достоинства и недостатки подхода
  • 00:23:55 - Отложенная загрузка лотов
  • 00:26:11 - Получение данных по API
  • 00:29:53 - Эмуляция API-клиента
  • 00:33:41 - Обновление цен в реальном времени
  • 00:35:05 - Эмулятор WebSocket-клиента
  • 00:38:19 - Обзор Control Flow
  • 00:43:30 - Проблемы сброса и производительности

Дальше займёмся решением проблем производительности и реализацией настоящей реактивности.

Скрытый контент
Комментарии (12)
Konstantin
2020-08-18 17:17

Спасибо, Дмитрий! Первый раз, первым оставил след )

Ответить
Yevhenii Lykholai
2020-08-18 19:08

Очень понравился скрин каст. Классно, что теперь и по джс идет изложение в стиле Дмитрия. Надеюсь, что и про тайп скрипт когда-то пару слов скажете. Спасибо.

Ответить
fedot
2020-08-19 08:04

Спасибо, за урок! Да, весьма интересный вопрос, только тайп скрипт может дать соблюдение строгости написания кода и крутые подсказки в шторме, но с другой стороны, возрастет сложность проекта и восприятие кода будет малость усложнено, тоже интересно по какому пути пойдет Дмитрий.

Ответить
Дмитрий Елисеев
2020-08-24 17:15

Да, про TypeScript скажу.

Ответить
fedot
2020-08-24 18:51

Спасибо.

Ответить
Danny
2020-08-19 06:57

Спасибо! Очень нравятся ваши уроки!

Ответить
Sergei
2020-08-19 09:36

21:08 я давно в JS не заглядывал. Синтаксический сахар синтаксического сахара. Комбо-вомбо :)

Ответить
Григорий
2020-08-21 11:14

Дмитрий, спасибо, очень своевременно! Меня уже начал немного бесить фронтенд, но теперь я вижу и в нём логичные приёмы!

Ответить
Maksim
2020-08-24 19:34

Вопрос не по теме урока, но не нашёл куда: доработайте пожалуйста сайт чтобы он запоминал какие видео я посмотрел а какие нет. Захожу не так часто - много времени уходит понять что я смотрел а что нет. Учитывая что я ещё часто не по порядку смотрю а только интересные темы.

Ответить
Дмитрий Елисеев
2020-09-03 08:05

Добавил в планы по доработке. Спасибо!

Ответить
<CatCode/>
2020-09-11 14:51

Суперское объяснение 👍 Спасибо за то, что Вы делаете!

Ответить
Marat
2020-09-16 17:32

Я не думал что в этом плеере можно ускорить воспроизведение. Гораздо понятнее когда x2 )

Ответить
Зарегистрируйтесь или войдите чтобы оставить комментарий