Мы с командой приступаем к проекту React. В первую очередь мы являемся командой Microsoft, которая имеет многолетний опыт работы с .Net!
Мы были действительно впечатлены React и чувствуем, что идем по этому пути. Мы до смерти перепробовали все варианты Angular, Vue и других.
Поскольку мы все разработчики C#, мы планируем использовать React с TypeScript. В основном по двум причинам
Мы привыкли к строго типизированной основе кода, исходящей из C#, поэтому мы добились большего успеха с React с TypeScript.
База кода может стать довольно большой, и мы планируем совместно использовать компоненты React и интерфейсы TypeScript между командами/проектами через внутренний реестр NPM. Мы думаем, что TypeScript выявит проблемы с вводом текста на раннем этапе, особенно при рефакторинге, и позволит более эффективно делиться информацией.
Я разговаривал с другой командой такого же размера, которая не начинала с TypeScript (или Flow). Они столкнулись с проблемами рефакторинга, когда их решение стало большим и переоснащенным в TypeScript.
В результате я хотел бы начать с TypeScript с первого дня
Тем не менее, я получаю отпор от более ориентированных на Javascript разработчиков. Кто сказал:
TypeScript не требуется в современных приложениях JavaScript ES6.
Более широкое сообщество React не использует TypeScript
Хуки, которые являются новыми для React, дополняют вышеперечисленные пункты
Я забрел в религиозный спор, а не в технический (статическая типизация против динамической), или есть оправданные моменты?
Рад признать, что я новичок в JavaScript по сравнению с моим опытом работы с C#, поэтому я могу полностью упустить суть.
Я думал, что задам вопрос сообществу и узнаю некоторые образованные мнения. Пожалуйста, будьте добры
Спасибо за быстрый ответ. О да, все это. Сложность, безусловно, является фактором и довольно большой кодовой базой команды x, поэтому удобство сопровождения также очень важно.
Я лично просто всегда использую TS, чтобы избежать усталости от принятия решений и потому, что в конце концов это всегда окупается.
Это хороший момент. Легче добавить с самого начала, сложнее добавить позже, поэтому добавляйте раньше.
Скажите людям, сопротивляющимся TypeScript, что они могут либо принять его, либо найти новую работу.





- TypeScript not required in modern ES6 JavaScript applications
Это зависит от того, какие требования. Вы говорите, что ожидаете рефакторинга, у меня есть некоторый опыт рефакторинга моих собственных проектов javascript и TypeScript. Могу сказать, что без TypeScript рефакторинг требует больше усилий — приходится много смотреть на код реализации, просто чтобы понять, что такое интерфейс. Это можно облегчить за счет большого количества документации по API и модульных тестов, но сколько проектов имеют их и сколько проектов поддерживают документацию по API, чтобы она на 100% соответствовала фактическому коду? Аннотации типов — это хороший способ выразить ожидания в коде, и у них есть дополнительное преимущество, которое нужно поддерживать вместе с кодом.
- The wider React community does not use TypeScript
Каждый использует то, что лучше для его нужд. На самом деле никакого "сообщества" нет, есть просто куча людей, работающих над разными проектами. То, что подходит для большинства людей, может оказаться не самым лучшим для вас.
- Hooks which are new to React compound the points above
последняя версия типов для React, похоже, поддерживает хуки. Результат поиска в Google по запросу «реагировать на хуки с машинописью» показывает, что многие люди используют хуки React с TypeScript. Я не знаю о каких-то конкретных проблемах, но если они есть, есть шанс, что в конце концов они будут решены.
Сложная бизнес-логика? Нужна ремонтопригодность? Используйте ТС. В противном случае не