Рубрики
Без рубрики

Пришло время дать Teamecript еще один шанс

Джейсон Дрейзехнер пришло время придать Teamescript сделать еще один Chancesince 2012, Tymdercript был популярным выбором для программистов, приезжающих в JavaScript с более структурированных языков (например, C ++ или Java). Но это также в значительной степени уволен теми, кто родом в мире JavaScript. Вы, возможно, слышали, что

Автор оригинала: FreeCodeCamp Community Member.

Джейсон Дрейзейнер

С 2012 года TypeScript был популярным выбором для программистов, приезжающих в JavaScript с более структурированных языков (например, C ++ или Java). Но это также в значительной степени уволен теми, кто родом в мире JavaScript.

Возможно, вы слышали, что угловая команда недавно Переключился на Teadercript для угловых 2 Отказ Так есть команды позади RXJS , Ionic , Cycle.js , План , Dojo , NativeScript , Лоттируемые , и другие.

Если вы находитесь в JavaScript/Node.js на некоторое время, легко предположить, что звоноты для этих проектов потеряли свои умы. Или, может быть, им погасили Microsoft. ?

И если вы не смотрели внимательно, вы, возможно, пропустили удивительный прогресс Typescript в прошлом году (и даже последние несколько месяцев).

Если вы все еще думаете «Tymdercript, это как CoffeeScript, верно?» – Эта статья для вас.

Существуют десятки отличных ресурсов и статей о преимуществах использования TymerctScript. Я надеюсь, что после прочтения этого вы сделаете другой вид.

JavaScript – с типами?

Для тех новых для этого обсуждения важно понимать отвращение, что большая часть мира JavaScript должна быть типами. Помимо своей переносимости, большая часть популярности JavaScript может быть отнесена к своей простоте.

Вид программистов, которые делают JavaScript, их инструмент выбора часто делают это для его гибкости. Там нет стандартной библиотеки, очень мало структуры, а без типов, пользователей JavaScript не нужно тратить много времени, думая о деталях при взломе новой идеи.

Это, вероятно, проще всего контрастировать на языке, такое как C ++, где программы, как правило, требуют намного больше структуры и накладных расходов. Многие программисты JavaScript (в частности, вышеупомянутые типы хакеров) находят Tedium традиционных классов, котельной, типов и типопередача медленного их вниз.

С помощью этой точки зрения легко понять, почему многие пользователи JavaScript настолько не относятся к идее JavaScript с типами.

Вот некоторые идеи, которые могут помочь облегчить эти страхи.

TypeyScript – это JavaScript с лучшим

Вероятно, одна из самых распространенных проблем с идеей использования TymerctScript – это то, что она не чистый JavaScript. Поскольку Tymdercript – это собственный язык, предполагается, что ваш код будет транспортирован в грязный шар, который вы когда-нибудь будете вынуждены отлаживать.

Помимо Teamscripts чрезвычайно хорошо проверено и широко используются, стоит отметить, что в зависимости от вашей конфигурации, очень мало «транспилонга» на самом деле происходит (если есть). Tymdercript – это просто JavaScript с дополнительными наборами.

Typeyctrction похоже на высокопрошенную Linter, способную проверить документацию и предупредить, когда код не используется как предназначен.

Он обеспечивает немедленную обратную связь и лучший опыт разработки для всех будущих пользователей вашего кода. Это также хороший тест для новых проектов – если ваш проект стоит подвинять для обеспечения соблюдения конвенций в стиле кода, ваш проект, вероятно, достаточно длительный, чтобы извлечь выгоду из TypectScript.

Команда SkestScript имеет стремится отслеживать JavaScript в обозримом будущем. Таким образом, если/когда дополнительные функции стабилизируются в JavaScript, TeampScript будет соответствовать их и адаптировать.

Tymdercript устраняет наверху времени выполнения

Другое распространенное заблуждение является то, что тип TypeyScript, проверка как каким-то образом сохраняется в среде выполнения, добавляя сложность и накладные расходы.

На самом деле, TypeScript – это хороший способ избежать проверки типа выполнения.

Tymdercript – это инструмент для разработки времени/с компиляцией Time – Принимает стандартный JavaScript с дополнительными типовыми подсказками и выводами JavaScript с этими подсказками удалены. (Если включено, он также может трансировать функции JavaScript ES6 и ES7 JavaScript к текущим стандартам.)

Тип-подсказки TypeScript дают нам все преимущества типов, а затем они исчезают.

Единственные подсказки, оставленные во время выполнения объекта Тип Одинаковые подсказки, предоставленные стандартными функциями JavaScript. (Например, когда вы создаете новый объект из прототипа, вы можете проверить его тип с помощью Exstanceof .)

По иронии судьбы, поскольку JavaScript не предоставляет стандартное средство проверки типа развития, многие из самых разработанных библиотек JavaScript Переместите свои собственные системы проверки типа выполнения Отказ

Эти библиотеки не собираются сделать это с самого начала, но часть предоставления хорошего опыта разработки – обеспечение того, чтобы разработчики могли видеть четкие и действенные ошибки, когда они допустили ошибку.

В достижении этой цели многие библиотеки широко проверяют типы параметров, переданных методам во время выполнения, бросание ошибок означало только для глаз разработчика, реализующего метод.

Это, безусловно, худшее из обоих миров Отказ Эти каскады промежутков времени выполнения добавляют значительный раздутый код, сделать код менее читаемым и повысить сложность поддержания 100%-процентного тестового покрытия.

Через большие кодовые базы эти тесты выполнения действительно добавляют. После небольшого рефакторинга многие крупные кодовые базы в конечном итоге с Все системы типа Отказ

Без использования TypeScript вы не только проигрываете на проверку типа времени разработки – вы часто перемещаете его во время выполнения. ( Я надеюсь, что у вас будет полное тестовое покрытие. )

Когда вы используете Typescript, вы предоставляете пользователям еще более лучший опыт разработки, уменьшить проверку типа выполнения в случае, если он необходим (например, ввод конечного пользователя, например), и облегчить ваш код для полного теста.

Tymdercript пришел долгий путь

Может быть, по причинам, упомянутым выше, когда я впервые услышал о TeampScript, я пробежал противоположное направление так быстро, как мог. Помимо противоположности для «лучшего вещника о JavaScript» (меньше структуры), это было сделано Microsoft Отказ

Но это больше не 2012. Tymdercript не утечка абстракции JavaScript, и в этом пространстве в этом пространстве есть лучшие хакеры и инженеры. (И я впечатлен, насколько хорошо Microsoft управляется им.)

Поскольку Typlectscript Tracks Ecmascript, использование Tymdercript не блокирует ваш проект на новый язык. Многие люди все еще не понимают этого, поэтому нередко слышать чувства, как:

Кому, для меня звучит как:

Если ваш проект каким-то образом перестает получать выгоду из TypebScript, вы можете запустить свой проект через компилятор (в последний раз), чтобы удалить все типы из вашей кодовой базы.

Тогда вы вернетесь к неядованному JavaScript.

TL; доктор

TypeyScript много улучшился недавно. Если вы слышали о TeampScript много лет назад, но с тех пор не на самом деле следил за ним, оно стоит другого взгляда.

Когда использовать Teamscript

Угловой: почему TypeScript?

Краткое техническое обсуждение именно поэтому угловая команда выбрала TypectScript для создания угловых 2.

Все библиотеки JS должны быть авторизованы в Typescript

Краткое изложение того, почему TypeScript – хорошая идея для библиотек JS, от создателя Cycle.js и вкладчика к RXJS.

Teamprctry Deep Div – почему Typeycript

Хорошее резюме преимуществ использования TymerctScript. ( TypeScript Deep Diver – отличная общая ссылка.)

Узнайте о типографии

Учебное пособие по типографии

Краткое руководство поддерживается Teamptry Team.

Цели дизайна Teamscript

Короткая вики, излагающая общие принципы дизайна команды Tymdercript.

Типрипсор-стартер

Проект котельной для построения библиотек JavaScript. Включает в себя правильное тестирование блока, генерацию документации и модуль Commentjs и ES6 (для Node.js и браузера).

Я написал это с надеждой смены ума. Если у вас есть какие-либо идеи о том, как я могу улучшить эту статью, пожалуйста Дайте мне знать Отказ

Пожалуйста ♡ и Поделитесь этим постом Если вы нашли это интересно. Спасибо за прочтение!