Основы проектирования фронтенд-систем: объясняем расхождение клиентских схем данных
I Code It
0:00 / 0:00
Основы проектирования фронтенд-систем: объясняем расхождение клиентских схем данных
1 362 просмотра · 3 месяца назад
I Code It
15,4 тыс. подписчиков
1 362 просмотра · 3 месяца назад
👉 Курс «Основы проектирования фронтенд-систем»: https://icodeit.thinkific.com/courses...
👉 Книга «Основы проектирования фронтенд-систем»: https://leanpub.com/frontend-system-d...
Мы тратим много времени на контракты бэкенд-API, миграции баз данных и обратную совместимость.
Но есть скрытое хранилище данных, которое мы часто меняем, не задумываясь: localStorage.
Когда вы меняете структуру данных в браузере, это изменение схемы — за исключением того, что вы не можете запустить одну миграцию для каждого устройства пользователя, и вы не можете отменить значение после его записи.
В этом видео я воссоздаю реальный сбой в производственной среде, используя приложение-доску объявлений. Простая функция фильтрации назначенных лиц преобразуется из CSV-строки в JSON-объект. Развертывание выглядит нормально. Откат выглядит нормально. Приложение все еще может быть сломано.
00:00 localStorage — это изменение схемы
01:21 О канале
01:37 Функция — Версия 1 (CSV)
03:32 Изменение формата — Версия 2 (JSON)
05:45 Почему это легко пропустить
06:23 Сбой отката — старый код, новые данные
08:27 Более совершенная ментальная модель
09:14 Как сделать это безопаснее
09:24 Шаблон 1 — Защитное чтение
10:51 Шаблон 2 — Тег версии
12:14 Шаблон 3 — Версионирование ключей
13:23 Резюме
📘 МОИ КНИГИ И КУРСЫ
👉 Основы проектирования фронтенд-систем (курс): https://icodeit.thinkific.com/courses...
👉 Основы проектирования фронтенд-систем (книга): https://leanpub.com/frontend-system-d...
👉 Антипаттерны React (Amazon): https://www.amazon.com/dp/1805123971
👉 Дополнительные уроки по продвинутым шаблонам: https://icodeit.com.au/tutorials/adva...
📩 ОСТАВАЙТЕСЬ НА СВЯЗИ
🧠 Новостная рассылка (проектирование систем и чистый код): https://juntao.substack.com
🌐 Веб-сайт и блог: https://icodeit.com.au
🐦 Twitter / X: / juntaoqiu
📺 YouTube (подпишитесь): / @icodeit.juntao
---
#frontend #systemdesign #localStorage #webdevelopment #react #фронтендархитектура #развертывание #откат #старшийразработчик