Допустим, залетает новый тип варианта ответа (например, видео) — как это учесть в структуре данных, которую мы заложили?

Для расширяемых вариантов ответа используйте discriminated union: общий type и отдельные поля для каждого вида, включая video.

Короткий ответ

Что ответить на собеседовании

Для расширяемых вариантов ответа используйте discriminated union: общий type и отдельные поля для каждого вида, включая video.

Подробный разбор

Ответ с пояснениями

Для расширяемых вариантов ответа используйте discriminated union: общий type и отдельные поля для каждого вида, включая video.

Например, текст содержит text, видео — ссылку или assetId и метаданные. По type выбирают валидатор, renderer и обработчик, а неизвестный вид отображают безопасным fallback. Проверьте совместимость API, хранения и старых клиентов; не ограничивайтесь добавлением ещё одного необязательного поля в общий объект.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее