/ Новости и уроки / Когда не стоит использовать TypeScript

Когда не стоит использовать TypeScript

119
Когда не стоит использовать TypeScript
В этой статье я расскажу о тех временах, когда TypeScipt отлично справлялся со своей задачей, и о других случаях, когда его использование - ненужная трата времени.

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

Хотите знать, когда не следует использовать TypeScript? Давайте сначала определим, что такое TypeScript.

Что такое TypeScript?

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

Microsoft разработала TypeScript в основном для крупных приложений, таких как корпоративные приложения с более чем 500 пользователями или более. TypeScript также можно использовать в фоновых приложениях, таких как NodeJS, для строго типизированного языка.

Теперь дайте нам знать, когда вообще не использовать TypeScript. Вот несколько вариантов использования, которые вы могли бы пересмотреть использование TypeScript:

При создании небольших приложений или прототипов

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

Давайте сравним два кода при программировании некоторых функций:

JavaScript


const myFunction = (x, y) => x * y;
 

TypeScript


const myFunction = (x: T, y: T) => x * y;
 

Добавление кода TypeScript в проект требует, чтобы мы объявляли типы, подобные этому примеру, и вам может не понравиться делать это на этапе создания прототипа.

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

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

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

Когда это не дает никакой ценности или результатов, которые вы ожидали

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

Например, сначала определите тип приложения, которое вы собираетесь создать. Это прототип? Предприятие? API, который будет использоваться сотнями разработчиков? Приложение, которое ориентировано только на взаимодействие с пользователем или анимацию? Или приложение, заполненное сложными вычислениями и формулами?

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

Когда ваши разработчики неопытны и не хотят адаптироваться к этому

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

Мы не всегда можем заставить нашу команду адаптироваться к TypeScript, если для этого нет веских причин и в зависимости от типа проектов, которые выполняет ваша команда. Это также зависит от типа набора навыков, который у них есть до того, как вы навязываете его им. Есть ли у них фоны ООП, такие как C # и Java? Если нет, то это принесет только вред, чем пользу.

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

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

Когда вы используете его из-за «обмана»

И последнее, но не менее важное: если вы просто используете TypeScript ради «шумихи», я думаю, вы не в том направлении. Для практики и освоения TypeScript, нет проблем в его использовании. Но использовать его в производственных приложениях только из-за «шумихи» нецелесообразно и не является хорошим показателем того, что это увеличит ценность.

Технический обман - плохая метрика, чтобы измерить ценности инструментов, которые мы используем. Что касается TypeScript, он завоевал экосистему JavaScript штурмом и широко используется разработчиками в наши дни из-за этой шумихи. Я думаю, это потому, что большинство разработчиков, использующих TypeScript, пришли из фона Java или C # к тому, что он широко использовался.

Заключение

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

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

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