Встречается на собеседованиях • сегодня
Какие знаешь способы убрать дублирование логики между сервером и клиентом
Один из способов — использовать **общий код** через монорепозиторий или npm-пакеты. Например, валидацию форм можно вынести в отдельный модуль и импортировать на клиенте и сервере.
```javascript
// shared/validators.js
export const validateEmail = (email) => /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);
```
**GraphQL** — другой подход, где сервер описывает схему данных, а клиент запрашивает только нужные поля, уменьшая дублирование логики выборки.
**Isomorphic/Universal JavaScript** позволяет выполнять один код и на сервере (Node.js), и на клиенте. Например, рендеринг React-компонентов:
```javascript
// server.js
import App from './App';
const html = ReactDOMServer.renderToString();
```
**Конфигурация через API** — сервер предоставляет клиенту настройки (например, feature flags), избегая хардкода.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы