typescript — тип javascript, который позволяет использовать объектно-ориентированное программирование уже сегодня в javascript, аналогично таким языкам, как C, Java и PHP. Среди функций, которые он добавляет, статическая типизация, поддержка классов и поддержка модулей и декораторов.

typescript – это надмножество javascript , то есть код основан на javascript и должен быть скомпилирован (переведен) в javascript, чтобы браузеры могли его понять, поскольку браузеры понимают только javascript .

Typescript используется потому, что он добавляет в javascript ряд функций, которых нет в языке, как мы увидим позже, но главным образом потому, что почти вся документация Angular2 написана на typescript.

Какие функции были добавлены в машинописный текст, которых нет в javascript?

typescript добавляет к javascript возможность писать код в объектно-ориентированном стиле, аналогичном языкам C, Java и PHP. Среди особенностей можно отметить использование статической типизации, организацию кода с помощью классов и модулей и использование декораторов.

Начнем с первой функции статической типизации.

Функция, которая дала имя typescript, — это статическая типизация. Это означает, что когда вы пишете машинописный код, вы должны определить тип переменных. Как это принято в таких языках, как C, Java и PHP7. Например, если переменная является строкой, нам нужно будет определить ее соответствующим образом, например:

var name: string = "yossi";

Имя переменной — name, а тип указывается после двоеточия (string).

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

Третья функция позволяет организовать код в модулях. Это возможно благодаря тому, что нескольким функциям или файлам кода может быть присвоено одно и то же имя, одно и то же пространство имен, что позволяет избежать ситуации, когда более одного класса или более одной функции имеют одно и то же имя. Благодаря использованию модулей можно безопасно использовать код, написанный разными программистами, в одном проекте без необходимости бороться за названия отделов. Что позволяет нам писать гораздо более крупный, гибкий и сложный код.

Последней функцией в списке является использование декораторов, то есть кода, который добавляет возможности к существующим классам без изменения кода самих классов.