Конференция по TypeScript: главные анонсы 2024 года
Ежегодная конференция Microsoft по TypeScript, прошедшая на этой неделе, порадовала разработчиков сразу несколькими значимыми анонсами. Ключевым событием стал выход TypeScript 5.5 — релиза, который существенно меняет подход к типизации и повышает производительность компилятора. Рассказываем о самых важных нововведениях, которые уже доступны в бета-версии и появятся в стабильном релизе в ближайшие недели.
TypeScript 5.5: новый уровень инференции
Главная «фишка» новой версии — автоматический вывод типов для замыканий. Раньше компилятор не всегда мог корректно определить тип переменной, захваченной из внешней функции, что приводило к ошибкам или необходимости явно указывать аннотации. Теперь TypeScript 5.5 анализирует контекст глубже и генерирует точные типы для замыканий, сокращая количество ручной работы на 15–20% в типичных проектах.
Улучшенная производительность компилятора
Разработчики из Microsoft оптимизировали работу с проектами, содержащими тысячи файлов. В TypeScript 5.5 время инкрементальной сборки сократилось на до 30% за счёт кэширования результатов анализа. Это особенно заметно в монорепозиториях и крупных enterprise-приложениях. Кроме того, улучшена работа с Node.js — теперь TypeScript быстрее обрабатывает импорты из node_modules.
Экспериментальная поддержка декораторов
Одним из самых ожидаемых анонсов стала официальная поддержка декораторов в соответствии с proposal Stage 3 для ECMAScript. Хотя декораторы были доступны в TypeScript ранее, новая реализация полностью совместима с будущим стандартом JavaScript. Разработчики могут использовать декораторы для метапрограммирования, логирования и валидации без дополнительных флагов в tsconfig.json.
Другие важные изменения
- Улучшенная проверка null/undefined — компилятор теперь точнее определяет случаи, когда переменная может быть null, что снижает количество рантайм-ошибок.
- Новый синтаксис для кортежей — добавлена возможность помечать элементы кортежа как опциональные с помощью суффикса
?, например:[string, number?]. - Поддержка const-параметров в типах — теперь можно объявлять типы, которые зависят от константных значений, что упрощает работу с конфигурационными объектами.
- Улучшенная интеграция с ESLint — TypeScript 5.5 генерирует более точные сообщения об ошибках для популярных линтеров.
Что дальше?
На конференции также анонсировали дорожную карту на 2025 год. В планах — полная поддержка декораторов в стабильной версии, улучшенная работа с асинхронными итераторами и экспериментальный режим «строгой типизации» для legacy-проектов. Кроме того, Microsoft подтвердила, что TypeScript продолжит развиваться как надстройка над JavaScript, не отходя от философии «JavaScript, который масштабируется».
Уже сейчас можно протестировать TypeScript 5.5-beta через npm: npm install typescript@beta. Разработчикам рекомендуется обновиться, чтобы оценить новый инференс и подготовить проекты к стабильному релизу.
Следите за обновлениями на PythonLib — мы будем публиковать подробные гайды по новым возможностям TypeScript и примерами их использования в реальных проектах.