Зачем TypeScript
Вопрос
Что даёт TypeScript и какие у него границы?
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
ошибки на этапе сборки вместо рантайма
типы как документация, которая не устаревает
рефакторинг с проверкой всех мест использования
типизация структурная, а не по имени
типов нет в рантайме - данные из сети надо проверять
any и as отключают проверку и накапливают долг
Что могут спросить следом
- Чем unknown лучше any
- Зачем zod, если есть типы
- Что такое структурная типизация на примере
Разбор
Главное - ошибки ловятся на сборке, а не у пользователя, и рефакторинг становится механическим: переименовал поле - компилятор показал все места.
Типизация структурная: подходит любой объект нужной формы, наследование не требуется.
Две важные границы, которые обязательно называют на собеседовании. Первая: типов
в рантайме нет. response as User ничего не проверяет - данные из сети надо валидировать
(zod, io-ts), иначе типы лишь создают ложное чувство безопасности. Вторая: any и
неаккуратный as выключают проверку точечно и незаметно - долг копится именно там.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.