Страницы

пятница, 1 сентября 2017 г.

TypeScript Declaration Files

На HolyJS 2017 Piter я спросил у Дугласа Крокфорда что он думает по поводу TypeScript, и заодно сообщил ему что я обратил внимание на TypeScript с его подачи, на что он мне ответил, что если ты хочешь писать на C# - пиши на C#. Но я пишу серверный код на ES6, и почему не использовать вместе с линтером (ESLint, или если угодно JSHint от самого Дугласа Крокфорда) еще один инструмент, который дает нам IntelliSenseпроверку типов, и в результате позволяет всей команде двигаться быстрее? К сожалению этот вопрос остался без ответа потому что Дуглас Крокфорд ...

... вежливо сообщил что его время истекло. Похоже я все-таки его достал :).

Тем не менее я все еще использую файлы объявлений, и даже успел создать пару PR в DefinitelyTyped.

Я больше не использую declare module когда пишу свои файлы объявлений, только экспорт объекта или экспорт функции. На мой взгляд экспорт класса ни к чему (хорошему не приведет), поэтому в моем коде классы (нечастые гости) "живут" внутри модулей и никогда не смотрят наружу.

Для того, чтобы автоматически выполнять проверку типов файлов JavaScript, в большинстве текущих проектов в jsconfig.json у меня присутствует свойство compilerOptions.checkJs: true и я  нахожу эту фичу TypeScript очень полезной. И точно не хочу компилировать что бы то ни было, в том числе TypeScript, в JavaScript.