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?

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

Популярное

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

Как фотограф Джулиана Бизли стала стриптизёршей и сняла легендарную серию Lapdancer

Как фотограф Джулиана Бизли стала стриптизёршей и сняла легендарную серию Lapdancer

Как Томми Томпсон нашёл 21 тонну золота на дне океана — и получил 10 лет тюрьмы

Как Томми Томпсон нашёл 21 тонну золота на дне океана — и получил 10 лет тюрьмы

«Бухгалтерия греха»: как средневековые покаянные книги фиксировали сексуальные проступки монахов и монахинь

«Бухгалтерия греха»: как средневековые покаянные книги фиксировали сексуальные проступки монахов и монахинь

Новые посты

Мастер леденящего хоррора Флавио Греко Палья

Мастер леденящего хоррора Флавио Греко Палья

Египетский художник Махер Моркос: путь из сувенирной лавки в высокое искусство

Египетский художник Махер Моркос: путь из сувенирной лавки в высокое искусство

Влюбленные в танго

Влюбленные в танго

История песни «Танец маленьких утят» — бессмертного хита многих поколений

История песни «Танец маленьких утят» — бессмертного хита многих поколений

30 портретов людей, не связанных кровным родством, но очень похожих друг на друга

30 портретов людей, не связанных кровным родством, но очень похожих друг на друга

Будапештский короткоклювый турман  – жутковатый голубь, мопс птичьего мира

Будапештский короткоклювый турман – жутковатый голубь, мопс птичьего мира

Ролевые игры в сексе: постельное хулиганство, добавляющее в отношения страсть

Ролевые игры в сексе: постельное хулиганство, добавляющее в отношения страсть

17 странных фотографий, на которых происходит нечто невообразимое

17 странных фотографий, на которых происходит нечто невообразимое

Лаконичная эротика от чешского фотографа Радима Коринека

Лаконичная эротика от чешского фотографа Радима Коринека

Портреты животных крупным планом

Портреты животных крупным планом

20 мимимишных фотографий, которые сделают ваш день лучше

20 мимимишных фотографий, которые сделают ваш день лучше

Женщины Клондайка: как «танцевальные девушки» и предпринимательницы зарабатывали на золотой лихорадке 1896–1899 годов

Женщины Клондайка: как «танцевальные девушки» и предпринимательницы зарабатывали на золотой лихорадке 1896–1899 годов