TypeScript

TypeScript — это новый язык программирования для приложений с большим кодом JavaScript. Многие уже столкнулись с TypeScript от Microsoft. Есть много неправильной информации о TypeScript.

Во-первых, TypeScript не является заменой или альтернативой JavaScript. TypeScript и JavaScript это как C + + и C. TypeScript — это расширение языка, а не новый синтаксис! JavaScript и JavaScript + + если на то пошло.

Особенности TypeScript

TypeScript предлагает статическую типизацию, вы можете определить тип данных переменных. Синтаксис немного необычен для тех, кто понимает язык C, дело в том что объект определяется после переменной, например:

function Hello(name: string) {
  return "Hello " + name;
}

Многие разработчики будут рады найти объявления классов:

// общий класс
  class Language {
  private hasClasses: bool;
  constructor(hasClasses: bool) {
  this.hasClasses = hasClasses;
  }
  ClassSupported() {
  return (this.hasClasses ? "да" : "нет");
  }
  }
  // JavaScript язык
  class JavaScript extends Language {
  constructor(){
  super(false);
  }
  }
  // TypeScript язык
  class TypeScript extends Language {
  constructor(){
  super(true);
  }
  }
  var js = new JavaScript();
  alert(js.ClassSupported()); // нет
  var ts = new TypeScript();
  alert(ts.ClassSupported()); // да

А вот интерфейсы TypeScript:

interface Website {
  name: string;
  url: string;
  }
  function ShowSite(site: Website) {
  return site.name + " at http://" + site.url + "/";
  }
  alert(ShowSite({ name: "htmlhook", url: "htmlhook.ru" }));

Интересно то, что объект не должен прямо указать эту реализацию интерфейса, а только должен соответствовать ожидаемым определениям.

TypeScript реализует модули:

module Say {
  export function Hello(text: string) {
  return "Привет " + text + "!";
  }
}
alert(Say.Hello("мир"));

Весь код переводится непосредственно в JavaScript, например:

var Say;
  (function (Say) {
  function Hello(text) {
  return "Привет " + text + "!";
  }
  Say.Hello = Hello;
  })(Say || (Say = {}));
  alert(Say.Hello("мир"));

Microsoft предоставил большую онлайн-площадку, чтобы помочь нам оценить синтаксис: www.typescriptlang.org/Playground/.

к меню ↑

Что хорошего в TypeScript

Давайте перечислим лучшее в TypeScript.

Разрабатывать новое для JavaScript это постоянная борьба с концепцией прототипных изданий. Это другой менталитет с классической концепцией изданий, используемых в таких языках как C # и Java. TypeScript обнадеживает на комфортную работу.

TypeScript использует ECMAScript, гармония класса синтаксиса. Когда это станет широко доступным, будет компилятор с записью, не нужно будет конвертировать классы, и ваш код будет работать.

Статическая типизация позволяет функции IDE, таких как авто-завершения, рефакторинг и отладка. Плагин был выпущен для Visual Studio, Sublime Text, Vim и iacs. Иными словами, TypeScript должен помочь легче разрабатывать сложные и большие приложения JavaScript.

Текст TypeScript можно использовать на стороне клиента или сервера в Node.js. Это расширенный набор JavaScript, в отличии от Dart TypeScript предоставляет сырье с не запутанными кодами. Не пытайтесь JavaScript полностью заменить TypeScript, для этого нужны другие производители браузеров, добавлять новые функции или нужна библиотека выполнения.

к меню ↑

Шансы на успех TypeScript

Язык был разработан Андерс Хейлсбергом, который принес нам C #. TypeScript с открытым исходным кодом при условии с лицензией Apache 2.0 на typescript.codeplex.com .

Наконец-то, компилятор JavaScript написан на TypeScript.

к меню ↑

Заключение

TypeScript будет принят разработчиками использующие для работы Microsoft.NET и Visual Studio. TypeScript полезен, но есть сообщества веб-разработчиков, которые мечтают не касаться продуктов Microsoft.

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

Лично мне нравится JavaScript. Это мощный инструмент для веб и предлагает много функции. Я понимаю основание для создания TypeScript, и думаю что в некоторых случаях нужно использовать TypeScript.