Блок 2 · Урок 1 из 5

Состояние: живая память приложения

Что приложение «помнит» прямо сейчас, пока открыто, — и почему это исчезает при перезагрузке, если не сохранить отдельно.

≈ 7 минут 🧠 что приложение помнит 🎯 цель: различать «живёт в памяти» и «сохранено надолго»

Зачем это вам

Когда просите агента «пусть приложение запоминает X» — важно понять: запоминает на сколько? До перезагрузки страницы (это состояние), надолго на этом устройстве (хранилище браузера — следующий урок), или навсегда и на всех устройствах (база данных)? Путаница здесь — корень классического бага: «ввёл данные, обновил страницу — всё пропало». Понимая состояние, вы ставите задачу точно: не просто «запомни», а «храни так, чтобы пережило перезагрузку».

Главная мысль

Состояние — это живая память приложения прямо сейчас

Состояние (state) — это все данные, которые приложение держит в памяти в текущий момент, пока открыто: какой пользователь вошёл, что лежит в корзине, что введено в форму, открыто ли меню, какие данные уже загрузились с сервера.1

Это живой снимок «что сейчас в голове у приложения». Оно хранится в оперативной памяти (RAM) — самой быстрой, но временной памяти компьютера. По умолчанию RAM очищается при перезагрузке или закрытии вкладки.2 Поэтому состояние называют эфемерным (ephemeral) — оно живёт ровно столько, сколько работает приложение.

Состояние бывает двух видов:

ВидГде живётЧто хранит
КлиентскоеБраузер (вкладка)Что на экране, что введено, открыт ли модал
СерверноеСервер (backend)Кто вошёл, что обрабатывается прямо сейчас

Суть одна: это оперативная, временная память. Закрылась вкладка или перезапустился сервер — состояние исчезло.

📌 Практическое правило: если данные нужны после перезагрузки — одного состояния мало, нужно их куда-то сохранить: в хранилище браузера или в базу данных.

Аналогия, которую можно пересказать

Рабочий стол и шкаф

Бумаги на столе— состояние (state): данные, с которыми приложение работает прямо сейчас
Сам стол— оперативная память (RAM): быстрый доступ, но к утру очищают
Уборщик вечером— перезагрузка или закрытие вкладки: состояние стирается
Убрать в шкаф— сохранить в хранилище или базу, чтобы пережило перезагрузку

Бумаги на столе удобны — под рукой, всё быстро. Но вечером уборщик сметает всё со стола. Если не убрал в шкаф — к утру пусто. Что важно — переноси в шкаф.

Запомните одно

Состояние — живая, но забывчивая память

Всё, что хранится в состоянии, исчезает при перезагрузке страницы — потому что живёт только в оперативной памяти (RAM), которая очищается при закрытии вкладки.

Поэтому первый вопрос про любые данные: «это должно пережить F5?» Если да — состояния недостаточно, нужно хранилище браузера или база данных.

Что это даёт на практике

Фраза агента → что он имеет в виду

«Сохраним это в state»
Положу в живую память приложения; на экране обновится сразу, но после перезагрузки пропадёт, если отдельно не сохранить.
«Состояние сбрасывается при перезагрузке»
Данные были только в оперативной памяти. Чтобы сохранить — нужно хранилище браузера или база данных.
«Клиентское и серверное состояние»
Часть памяти живёт в браузере (что на экране), часть — на сервере (кто вошёл и что обрабатывается).
«Синхронизируем состояние с сервером»
То, что в памяти браузера, отправим на сервер и сохраним — чтобы не потерять и чтобы было видно с другого устройства.

Состояние (state) — данные, которые приложение держит в памяти, пока работает: что на экране, что введено, кто вошёл.

Оперативная память (RAM) — быстрая временная память; её содержимое исчезает при перезагрузке или закрытии вкладки.

Эфемерность — свойство данных жить, пока приложение открыто, и пропадать после закрытия или перезагрузки.

Проверьте себя

Четыре вопроса с мгновенной проверкой

1. Что такое «состояние» приложения?

2. Пользователь заполнил форму, не сохранил и перезагрузил страницу. Что по умолчанию произойдёт?

3. Почему состояние называют «эфемерным»?

4. Агент говорит: «Эти данные потеряются при перезапуске». Что сделать, если данные важны?

Куда мы идём

Программа курса — 7 блоков