
Василий Алфертьев
Открытые решения
TypeScript имеет низкий порог входа на первых шагах его изучения. Но не все разработчики изучают язык основательно и глубоко, после того как освоят его на определённом уровне, достаточном для работы. Разработчики, пришедшие в TypeScript из других языков, могут рассуждать о TypeScript по аналогии с языками из своего опыта, не изучая тщательно его нюансы. Из-за этого может сложиться неправильное представление о языке, его возможностях и ограничениях.
Я же хочу подсветить сравнительно простые, но важные моменты, про которые мало говорят, но о которых стоит знать уже начинающим.
Рассмотрим существенные, на мой взгляд, проблемы системы типов TypeScript, которые могут приводить к ошибкам во время исполнения программы, даже когда исходный код выглядит правильным и красивым, и никаких ошибок компиляции нет. Сосредоточимся на концепции отношения подтипов (subtyping), лежащего в основе систем типов многих языков программирования. Посмотрим на примерах, наскольно проверка совместимости типов в TypeScript расходится с настоящим отношением подтипов из математики.

Открытые решения

Т-Банк