DevTools Brief — обзор инструментов

TypeScript ломается не в типах, а в границах: 5 мест, где проект быстро деградирует

TypeScript ломается не в типах, а в границах: 5 мест, где проект быстро деградирует

Чаще всего проблемы не в «сложном типе», а в том, как проект подключает внешние данные и локальные модули. Если границы не описаны, TS превращается в декоратор для any, а не в защиту.

— Не тащите типы из runtime-данных напрямую: сначала валидируйте вход, потом присваивайте тип.
— Не включайте skipLibCheck как костыль: он прячет конфликтующие декларации и ломает доверие к сборке.
— Не раздавайте any через helper-функции: один удобный хелпер заражает половину репы.
— Не смешивайте ESM и CJS без явной стратегии: импорты начинают работать «почти всегда», а это плохой режим.

Отдельно проверьте tsconfig: strict, noUncheckedIndexedAccess, exactOptionalPropertyTypes. Эти флаги сначала добавляют шум, потом убирают класс багов, которые иначе всплывают уже в проде. 🔧

Если типы в проекте кажутся «слишком строгими», обычно проблема не в TypeScript, а в слишком широких границах между данными, модулями и сборкой.
Этот пост опубликован в Telegram-канале DevTools Brief — обзор инструментов. Подписаться можно по ссылке: @devtools_brief.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.