intermediate
Границы server и client
Выбирайте, где выполняется код, что может пересечь границу и как data и actions движутся между server и client.
На интервью по границам проверяют, где выполняется код и что может пересечь сеть. Server Components — дефолт в App Router; Client Components с `use client` — для events, state, effects и browser API.
Подтемы: Server Components, Client Components, Server Actions и паттерны server-side fetch.
На интервью: нарисуйте границу — какой модуль импортирует server-only пакеты, какие props сериализуются, где выполняются мутации.
Типовые ошибки: server-only код в client bundle, передача functions или class instances как props, дублирование fetch на клиенте после server load.
Чеклист:
- По умолчанию server; client осознанно.
- Сериализуйте только поддерживаемые props.
- Секреты и DB clients на сервере.
- Чтение на server, мутации через actions или API.