Вступление

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

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

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

Начинающему разработчику понимание типизации может помочь принять правильное решение, от которого будет зависеть вся его карьера. Ведь каждый язык программирования привносит в жизнь разработчика не только возможности, но и неповторимую идеологию.

Поэтому прежде чем приступить к изучению TypeScript стоит закрыть все вопросы связанные непосредственно с самой типизацией. Если данная тема кажется Вам не совсем понятной или вы вовсе с ней не знакомы, то данная глава поможет стать более компетентными в таких вопросах как

  • Система типов
  • Тип данных
  • Типы значение
  • Ссылочные типы
  • Явные/неявные преобразования
  • Типизация
  • Типизированные/нетипизированные языки программирования
  • Статическая/динамическая типизация
  • Сильная/слабая типизация
  • Явная/неявная типизация
  • Вывод типов
  • Совместимость типов

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