TypeScript что это

0

TypeScript (TS, TScript или «тайпскрипт») — язык программирования, который используется в веб-проектах. Он основан на JavaScript, но код TS проще, понятнее и надежнее за счет статической типизации (привязки переменных к конкретным типам данных). Кроме того, код, написанный на TS может компилироваться в JavaScript. Этот язык активно используется во фронтенде и бэкенде.

Вместе с экспертами агрегатора онлайн-курсов Kursfinder мы создали детальную статью, посвящённую TypeScript — языку программирования, который является расширением JavaScript.

Bigpicture ru e293910ec585875a028f

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

Отличия TypeScript от JavaScript

Строгая типизация

JavaScript отличается от TS нестрогой, динамичной типизацией. JS позволяет присваивать одной переменной числовое, а потом текстовое значение и т.д. У TypeScript строгая типизация, поэтому каждой переменной во время создания присваивается свой type. Он может быть стандартным или созданным разработчиком. Типы могут создаваться в пределах возможностей языка

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

Кроме примитивных типов, которые есть в JS, у TypeScript есть другие, например, any – позволяет применять любое значение или void – функции без return’a, которые ничего не возвращают.

Объектно-ориентированный подход

При объектно-ориентированном подходе информация рассматривается в виде классов и объектов. Классы в этом случае «каркасы», на основе которых создаются объекты, а объекты – сложные экземпляры данных. У каждого объекта есть свой класс, как у переменной тип.

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

TypeScript отличается поддержкой трех модификаторов:

  • Public — позволяет получать доступ к элементам без ограничений. Устанавливается по умолчанию.

  • Private — доступ к таким элементам возможен только из класса, в котором они определены.

  • Protected — к ним можно получить доступ из класса, в котором они определены, а также в подклассах или производных класса.

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

Высокая скорость работы над проектом

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

Bigpicture ru 554867cae375a0ca7a6a

Как работает TypeScript

Код, который пишется на TS нельзя выполнять напрямую в браузере. Поэтому TypeScrit не является самостоятельным языком. Это просто языковая надстройка JS. Чтобы код работал необходим дополнительный этап – транспиляция, при которой ПО выполняет преобразование кода на TS в «чистый» JS.

JavaScipt не нуждается в установке в систему, так как язык по умолчанию поддерживается любыми браузерами. А вот TypeScript необходимо установить, так как транспиляция требует наличия модуля tcs. Для этого необходимо установить Node.js, загрузить пакет для программирования на TS через NPM:

npm install -g typescript

Когда программа на TypeScript написана, вы получите файл, имеющий расширение .ts. После этого необходимо компилирование и преобразование в JavaScript с помощью tsc. Выполнить это можно посредством консоли:

tsc file_example.ts

Пример кода

const getUsers = (): ThunkAction<void, {}, {}, AnyAction> =>

async (dispatch: ThunkDispatch<{}, {}, AnyAction>) => {

//…

try {

const users: User[] = await APIService.get(‘/users’)

dispatch(successGetUsers(users))

} catch(err) {

dispatch(failedGetUsers(err))

}

}

Написать и выполнить код на TS можно на этой страницы браузера без использования локальных настроек.

Плюсы TypeScript

  1. Если в процессе модификации кода допустить ошибки, их будет видно сразу, а не когда код будет выполняться.

  2. Наличие интерфейса и классов.

  3. Открытый исходный код, выложенный на GitHub.

  4. Ускорение и упрощение написания комплексных решений, которые будут отличаться простотой развития и тестирования.

  5. Простота изучения и большое количество мануалов.

  6. Высокая скорость компиляции.

  7. Распространение по лицензии Apache.

Минусы TypeScript

  1. Нельзя выполнить типизацию ошибок, которые появляются работать в режиме реального времени.

  2. Вкладка TS есть не у всех браузеров в консоли, что увеличивает время, необходимое для работы.

  3. Большое количество нетривиальных классов, в которых нужно разбираться.

  4. Статическая типизация обходится за счет типа данных any.

 

 

А вы знали, что у нас есть Telegram?

Подписывайтесь, если вы ценитель красивых фото и интересных историй!

Популярное

Самые горячие темы

Школьница, которую искали 9 лет, нашлась уже с мужем и детьми

Школьница, которую искали 9 лет, нашлась уже с мужем и детьми

10 простых лайфхаков на случай, когда нет горячей воды

10 простых лайфхаков на случай, когда нет горячей воды

От разбойников до демонов: ужасы дорог Средневековья

От разбойников до демонов: ужасы дорог Средневековья

Новые посты

Как живут обитатели Кубер-Педи, города под землей, который вы точно видели в кино

Как живут обитатели Кубер-Педи, города под землей, который вы точно видели в кино

7 вкуснейших салатов без майонеза

7 вкуснейших салатов без майонеза

История Филиппа Эштона, выбравшего жизнь на необитаемом острове, вместо пиратства

История Филиппа Эштона, выбравшего жизнь на необитаемом острове, вместо пиратства

Где хранили денежки раньше и сейчас: современные копилки VS времен СССР

Где хранили денежки раньше и сейчас: современные копилки VS времен СССР

Красота, страсть и драма на фотографиях Дэвида Дребина

Красота, страсть и драма на фотографиях Дэвида Дребина

Художник Станислав Плутенко: как россиянин попал в один рейтинг с Сальвадором Дали

Художник Станислав Плутенко: как россиянин попал в один рейтинг с Сальвадором Дали

Она исчезла с круизного лайнера: Шокирующая тайна Ребекки Кориам

Она исчезла с круизного лайнера: Шокирующая тайна Ребекки Кориам

Фотохудожник Пьеро Марсили Либелли: когда объединяются ирония, абсурд и талант

Фотохудожник Пьеро Марсили Либелли: когда объединяются ирония, абсурд и талант

Осторожно, ИИ-слизь! Ваши любимые посты — это фальшивка

Осторожно, ИИ-слизь! Ваши любимые посты — это фальшивка

«Prisencolinensinainciusol»: как бессмысленная песня Адриано Челентано стала бессмертным хитом

«Prisencolinensinainciusol»: как бессмысленная песня Адриано Челентано стала бессмертным хитом

Москва 1960-х

Москва 1960-х

Аль-Наслаа — мистическая скала с идеальным разломом посреди аравийской пустыни

Аль-Наслаа — мистическая скала с идеальным разломом посреди аравийской пустыни