Самодокументация и контракты
Сейчас занят рефактором типизации большого проекта. В угоду скорости в своё время при разработке к типизации относились опосредовано: есть там, где создаёт удобство. Сейчас проект вырос и это стало причинять боль
Теперь нужно потратить очень много времени на исправление ситуаци
Почему так получилос Типизация js кода часто воспринимается как блаж, лишность. И часто этим и является. Но когда ваш проект это не три экрана, а сотни форм, множество уровней абстракции и все дела - отсутствие нормальных типов не мешает проекту работать, но создаёт ошибки переиспользования и легаси с живом проекте.
Прежде всего TypeScript возник как потребность самодокументирования контрактов данных между сущностями системы. Это потом он оброс новообразованиями. Но исходное- это система описания контрактов.
И вот когда эта система живая и поддерживается свежей и работоспособной - вот тогда она помогает.
Я против 100% типизации - это лишнее:
const str: string = 'string' Это лишнее.
Но описать контракты данных между модулями - это очень правильный путь.
А как вы относитесь к типизации кода?