Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2021 September 05

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
Не забываем про автокомплит
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
Который в случае тестов будет плюс минус одинаковый
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
А если возьмём большую кодовую базу, то я вообще выберу tabnine, он все равно выигрывает по скорости и удобству и у автокомплита ts и у js
источник

VF

Vladimir Fomin in NodeUA - JavaScript and Node.js in Ukraine
Поделюсь своим впечатлением о ТС. На чистом js пишу более 10 лет, последние два-три года на ТС.
Из минусов:
1. Скорость написания кода упала, это факт, т.к два раза нужно по сути писать логику. Описать типы, потом логика. Местами это бесит
2. Код написанный на тс отличается от js, и да там больше болерплейта.
3. Придется научиться писать сложные типы, т.е. придется погружаться глубоко в тс, хотите вы того или нет
4. Неизбежно появляются сложные типы прочитать которые местами трудно, а новичку просто не возможно
5. Не работает в рантайме, для описания сторонних сервисов все равно приходится использовать js
6. ТС впринципи справляется с проверкой типов опять же если нет сторонних сервисов и вы понимаете как он работает.
7. В ide появляются подсказки и это действительно удобно
8. Чужой код становится читать проще, опять же если там нет сложных типов
9. ТС развивается и на нем  становится удобнее работать
10. ТС придется учить т.к. все больше и больше вакансии где он требуется


В общем, с ТС это как-то так, сначало меня вырвало, но потом друзья убедили меня попробовать ещё раз и мне понравилось.
Как правило, люди выбирают тс по трем причинам, удобно читать код, подсказки в ide, это модно и даст строчку в резюме.
Если вам важна на проекте скорость, то тс не нужен. Но опять же нужно смотреть кто в команде, т.к. людям привыкшим писать на типизированных языках, на чистом js писать тяжело.
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
На больших проектах ТС важен не скоростью разработки и не автокомплитом. А именно тем, какой джс код мы пишем, чтоб были удобные типы. Я выше писал много раз, что типизация джс говнокода - неблагодарное дело. ТС помогает структурировать бизнес-логику приложения, если используется ДО джс кода
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
» два раза нужно по сути писать логику

я когда начинал писать на ТС, мне тоже так казалось. Когда перестал использовать классы - это чувство пропало
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
Мне это непонятно. Я могу "структурировать бизнес логику приложения" точно так же на начальных этапах js кода
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
это может и джун сделать. Но качество структуры будет отличаться. Само качество легко оценить лёгкостью типизации этого джс кода. Тот же полиморфный код - его больно типизировать. Я, как и Тимур - за мономорфный код в джс
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
Почему качество должно отличаться?
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
потому что это будет делать джун?
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
Я о разнице js и ts
источник

VF

Vladimir Fomin in NodeUA - JavaScript and Node.js in Ukraine
Здесь не в классах дело. Например, нужно преобразовать поля объекта из snake в camel, пиши тип. Нужно написать chaining объект пиши тип и т.д.
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
инлайн типы с авто-infer рулят (почти всегда)
жаль, мой ишью по этому поводу ТС закрыли без решения: https://github.com/microsoft/TypeScript/issues/43817
(поломали обратную совместимость в инлайновых типах)
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
можно, конечно, писать мономорфный джс код, такой же, как я буду с типами писать - но без ТС. Но я не видел таких примеров на чистом джс. Не даром ТС буквально заставил меня отказаться от классов...
источник

EK

Evgen K in NodeUA - JavaScript and Node.js in Ukraine
Да, тс как сигнальная лампочка - если где то с ним появляются проблемы, то чтото уже не так с кодом. В жс так прочувствовать гораздо тяжелее. И да, я тоже считаю что тс это не про ооп, как принято многими
источник

Y

Yaroslav in NodeUA - JavaScript and Node.js in Ukraine
Тс оказался факелом похлеще" пробелов против табов" и "священных войн за ос")
Илья вбросил, а Тимур в своественной ему манере подтрунивает джунов. А вы тут горите уже три дня.
Как будто каждый из вас сам вправе выбирать стек)
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Право выбора стека есть есть у всех, хотя бы в момент принятия решения об ответе на оффер
источник

BB

Bogdan Bida in NodeUA - JavaScript and Node.js in Ukraine
Так можно и касиром начать работать или долго у родителей на шее сидеть если перебирать
источник

BB

Bogdan Bida in NodeUA - JavaScript and Node.js in Ukraine
Вот подходит выпускной универа, там или колледжа хз, надо где-то жить, надо что-то кушать, особенно если еще и не один

Вакансий на джунов без опыта или с минимальным опытом и так не много, а тут еще и привередничать
источник

BB

Bogdan Bida in NodeUA - JavaScript and Node.js in Ukraine
С этого и начинается привыкание к экспрессам тс'ам и использовании их не в том ключе
источник