TypeScript: Урок 1 — Основные моменты

JavaScript — по настоящему вездесущий язык программирования. Можно написать веб приложение причем не только frontend, но и backend используя Node.js. И это не все, можно использовать Apache Cordova или ReactNative и другие подобные технологии для написания мобильных приложений , а можно программировать микроконтроллеры используя Kinoma. Бесспорный факт, что JavaScript завоевал популярность и используется практически на любой платформе. 

Как у любого языка программирования, у него есть плюсы и минусы. Он достаточно прост в изучении, изначально он был создан для создания простых быстрых скриптов, сомневаюсь, что создатели могли предположить, что на нем будут писать большие приложения и огромным количеством кода. И вот с созданием больших, надежных приложений на JavaScript все не так здорово, как хотелось бы:

JavaScript — интерпретируемый язык из-за чего мы можем узнать о проблеме (например опечатке), только после выполнения кода, что не очень удобно.

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

JavaScript — динамическая типизация, то тоже доставляет немало головной боли, с проверками на тип значения.

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

Читать далее TypeScript: Урок 1 — Основные моменты