TypeScript – Изучаем с нуля

TypeScript – Изучаем с нуля

От автора: начнем изучение TypeScript с нуля, а именно — с того, откуда он вообще взялся и для чего нужен.

JavaScript был представлен как язык программирования для клиентской стороны. Однако разработка Node.js позволила рассматривать JavaScript как перспективную технологию и на стороне сервера. Но по мере развития кода JavaScript, он становится все более запутанным, поэтому следить за кодом и повторно его использовать становится все сложнее.

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

Что такое TypeScript?

Согласно определению, «TypeScript – это JavaScript для разработки в масштабах приложений». TypeScript является строго типизированным, объектно-ориентированным, компилируемым языком программирования. Он был разработан Андерсом Хейлсбергом (разработчик C#) в Microsoft. TypeScript представляет собой как язык программирования, так и набор инструментов. Это типизированный, расширенный JavaScript, компилируемый в JavaScript. Другими словами, TypeScript – это JavaScript с некоторыми дополнительными характеристиками.

TypeScript – Изучаем с нуля

Характеристики TypeScript

TypeScript – это просто JavaScript. TypeScript начинается в JavaScript и заканчивается в JavaScript. Typescript принимает базовые структурные элементы программы от JavaScript. Соответственно, чтобы использовать TypeScript, нужно знать только JavaScript. С целью выполнения, код TypeScript полностью конвертируется в JavaScript эквивалент.

TypeScript поддерживает другие JS библиотеки. Компилируемый TypeScript может быть использован любым JavaScript кодом. JavaScript, сгенерированный с помощью TypeScript, может повторно использовать все существующие JavaScript фреймворки, инструменты и библиотеки.

JavaScript – это TypeScript. Это значит, что любой валидный .js файл можно переименовать в .ts и скомпилировать с другими TypeScript файлами.

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

TypeScript и ECMAScript

ECMAScript спецификация – это стандартизированная спецификация языка скриптов. Опубликовано уже шесть версий ECMA-262. Шестая стандартная версия имеет кодовое название «Harmony». TypeScript поддерживает спецификацию ECMAScript6.

TypeScript – Изучаем с нуля

TypeScript применяет базовые свойства языка спецификации ECMAScript5, то есть официальной спецификации JavaScript. Такие свойства языка TypeScript как Модули и ориентация на основе классов соответствуют спецификации EcmaScript 6. Плюс ко всему, TypeScript охватывает такие свойства как обобщенный тип и сигнатура типа, которые не являются частью спецификации EcmaScript6.

Зачем нужен TypeScript?

TypeScript во многом превосходит все аналоги, к примеру, такие языки программирования как CoffeeScript и Dart, в том плане, что TypeScript – это расширенный JavaScript. Для сравнения, Dart и CoffeeScript являются новыми языками, и для них требуется среда выполнения, ориентированная на конкретный язык. Преимущества TypeScript:

Компиляция − JavaScript – это интерпретируемый язык программирования. По этой причине его нужно тестировать на корректность. В таком случае, если в коде присутствует ошибка, то это обнаружится только в конце, когда код уже полностью написан. Чтобы найти баг, придется потратить много времени. Компилятор типа «исходный код в исходный код» обеспечивает функцию проверки ошибок. Когда TypeScript находит синтаксические ошибки, он компилирует код и генерирует ошибки компиляции. Таким образом, можно найти ошибки еще до выполнения кода.

Строгая статическая типизация − JavaScript не является строго типизируемым языком программирования. TypeScript обладает функцией статической типизации и системой вывода типов посредством TLS (TypeScript Language Service – Языковая служба TypeScript). Тип переменной, объявленной без указания типа, может быть выведен посредством TLS на основе значения.

TypeScript поддерживает определения типа для существующих JavaScript библиотек. Файл определений TypeScript (с расширением .d.ts) обеспечивает определения для внешних JavaScript библиотек. Как результат, код TypeScript может содержать эти библиотеки.

TypeScript поддерживает такие понятия объектно-ориентированного программирования как классы, интерфейсы, механизм наследования и так далее.

Компоненты TypeScript

В основе TypeScript лежат три компонента:

Язык – Он включает в себя синтаксис, ключевые слова и сигнатуры типа.

Компилятор TypeScript − Компилятор TypeScript (tsc) конвертирует инструкции, написанные в TypeScript для его JavaScript эквивалентов.

Языковая служба TypeScript – «Языковая служба» предоставляет дополнительный уровень вокруг конвейера основного компилятора, которым являются редакторы. Языковая служба поддерживает стандартный набор стандартных операций по редактированию, например, автодополнение инструкций, автопоподстановки для сигнатур, форматирования и т.д.

TypeScript – Изучаем с нуля

Файлы определений

После того, как скрипт TypeScript был скомпилирован, можно сгенерировать файл определений (с расширением .d.ts), который выступает в качестве интерфейса для компонентов в скомпилированном JavaScript. Принцип действия файлов определений аналогичен принципу действия файлов заголовков в C/C++. Файлы определений (файлы с расширением .d.ts) обеспечивают автодозаполнение для поддержки типов, вызовов функций и переменных для таких JavaScript библиотек как jQuery, MooTools и т.д.

Источник: //www.tutorialspoint.com/

Редакция: Команда webformyself.

Метки:

Похожие статьи:

Комментарии Вконтакте:

Комментарии (1)