Разбираемся с базой Flutter: виджеты и ключи 🧩

🔹 StatelessWidget — неизменяемый «чертеж». Не умеет меняться сам. Нужны новые данные? Старый виджет уничтожается, создается новый. 💡 Лайфхак: всегда используйте const, чтобы Flutter не тратил ресурсы на перерисовку статичных данных.

🔹 StatefulWidget — разделен на неизменяемый виджет и State (состояние), который живет отдельно в памяти. Позволяет обновлять экран локально через setState(). Жизненный цикл State: • initState() — рождение (подписки, запросы в сеть). Вызывается 1 раз. • didUpdateWidget() — синхронизация при изменении родительского виджета. • build() — отрисовка UI. • dispose() — приборка (закрытие потоков, удаление контроллеров).

🔹 Ключи (Keys) — «паспорта» виджетов для сохранения их состояния при перемещении в дереве (например, в ListView). • LocalKeys (ValueKey, ObjectKey, UniqueKey) — работают внутри одного списка. • GlobalKey — доступ к State из любой точки приложения. • PageStorageKey — сохраняет скролл даже после удаления виджета.

Разбираемся с базой Flutter: виджеты и ключи 🧩
🔹 StatelessWidget — неизменяемый «чертеж». Не умеет меняться сам. Нужны новые данные? Старый виджет уничтожается, создается новый | Сетка — социальная сеть от hh.ru