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?

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

Популярное

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

Как появился напиток заключенных чифирь, и что из-за него происходит с организмом

Как появился напиток заключенных чифирь, и что из-за него происходит с организмом

Трогательная история Фриды-полудевочки — одной из последних звезд эпохи «цирков уродов»

Трогательная история Фриды-полудевочки — одной из последних звезд эпохи «цирков уродов»

Было-стало — 25 фото-сравнений, которые заставят иначе взглянуть на привычные вещи

Было-стало — 25 фото-сравнений, которые заставят иначе взглянуть на привычные вещи

Новые посты

Секс, наркотики и кабаре — ночная жизнь Веймарской Германии

Секс, наркотики и кабаре — ночная жизнь Веймарской Германии

Почему купить живую елку полезней для экологии, чем ставить искусственную

Почему купить живую елку полезней для экологии, чем ставить искусственную

Эта коллекция предметов, изъятых у авиапассажиров службой TSA сделает ваш день

Эта коллекция предметов, изъятых у авиапассажиров службой TSA сделает ваш день

25 удивительно странных свадебных традиций со всего мира

25 удивительно странных свадебных традиций со всего мира

6 самых шокирующих анатомических музеев мира

6 самых шокирующих анатомических музеев мира

Лягушки, сердце, ракушки и другие шоколадные фигуры от Сары Харди

Лягушки, сердце, ракушки и другие шоколадные фигуры от Сары Харди

22 фотографии идеальных форм, от которых глаз не оторвать

22 фотографии идеальных форм, от которых глаз не оторвать

Темные годы — Армения в начале 90-х

Темные годы — Армения в начале 90-х

22 досадные неприятности, которые превратили чей-то день в кошмар

22 досадные неприятности, которые превратили чей-то день в кошмар

Три высших образования порнокарьере не помеха: 12 самых умных актрис взрослого кино

Три высших образования порнокарьере не помеха: 12 самых умных актрис взрослого кино

Скульптор Юки Морита и его удивительные химеры

Скульптор Юки Морита и его удивительные химеры

7 диковатых традиций первой брачной ночи в странах третьего мира

7 диковатых традиций первой брачной ночи в странах третьего мира