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?

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

Популярное

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

Покушение Фанни Каплан на Ленина — один выстрел, изменивший ход истории

Покушение Фанни Каплан на Ленина — один выстрел, изменивший ход истории

Загадочная история Хвалдимира — кит-белуха, который стал шпионом

Загадочная история Хвалдимира — кит-белуха, который стал шпионом

Сила стыда: как Gillette заработала миллиарды на женских комплексах

Сила стыда: как Gillette заработала миллиарды на женских комплексах

Новые посты

Классик мировой фотожурналистики Вернер Бокельберг и его John Player Special Calendar

Классик мировой фотожурналистики Вернер Бокельберг и его John Player Special Calendar

Ученые объяснили, почему сейчас 30-летние женщины выглядят моложе своих сверстниц в прошлом

Ученые объяснили, почему сейчас 30-летние женщины выглядят моложе своих сверстниц в прошлом

22 фото уникальных вещей, которые сделали своими руками настоящие таланты

22 фото уникальных вещей, которые сделали своими руками настоящие таланты

Красота природы и женского тела в фотоработах Сергея Лексина

Красота природы и женского тела в фотоработах Сергея Лексина

Показалось или нет? 22 фото вещей, которые ну очень похожи на другие вещи

Показалось или нет? 22 фото вещей, которые ну очень похожи на другие вещи

Горы и рисовые поля Там Кок

Горы и рисовые поля Там Кок

6 крутых способов приготовить рыбу по-новому

6 крутых способов приготовить рыбу по-новому

Дети остаются детьми даже в самые сложные времена

Дети остаются детьми даже в самые сложные времена

Интерьер в стиле «совок» — в чем секрет убожества советских ремонтов

Интерьер в стиле «совок» — в чем секрет убожества советских ремонтов

Вся правда о «самой эффективной» диете 70-х: яйца, белое вино и немного боли

Вся правда о «самой эффективной» диете 70-х: яйца, белое вино и немного боли

10 рецептов счастья от любимого клоуна детства Вячеслава Полунина

10 рецептов счастья от любимого клоуна детства Вячеслава Полунина

Сергей Крикалев — самый знаменитый после Гагарина российский космонавт, которого «забыли» в космосе

Сергей Крикалев — самый знаменитый после Гагарина российский космонавт, которого «забыли» в космосе