Цели интенсива TypeScript увеличивает эффективность и надёжность JavaScript-разработки добавлением типизации. Он взят за основу в некоторых современных фреймворках, таких как Angular. Но, если посмотреть на тенденции современной разработки, TypeScript активно используется и с другими фреймворками и окружениями, включая React, Vue и даже Node.js. Основное внимание будет направлено на особенности TypeScript, часто возникающие проблемы и сложности в разработке, пути их решения. Начнём с функций и компонентов, далее разберемся с продвинутыми темами, удобной настройкой окружения, системой сборки. В процессе написания приложения на Typescript изучим возникающие "подводные камни" и как их правильно обойти. Программа интенсива Быстрый старт. Экосистема TypeScript Краткое введение - что именно даёт TypeScript, какие удобства в разработке он может обеспечить. Основные опции компиляции и как они влияют на процесс сборки. Система типизации TypeScript Разбираемся с основными типами и структурами данных в JavaScript и TypeScript, особенно any, unknown, never и void. Изучаем interface и type. Основные различия, тонкости использования и учимся их применять. Учимся использовать Generics(). Разбираемся со всеми способами использования(interface, type, function и тд). Учимся использовать ограничения и дефолтные значения Generics. Разбираемся с Type Guards. Учимся писать честные типы и убираем any из своих проектов. Разбираемся с выведением типов в TS. Учимся комбинировать с Generics. Детально изучаем Mapped Types. Учимся их использовать, рассматриваем их применение в утилитарных типах самого TS, пишем свои утилитарные типы. Conditional types – что это? зачем? Подробно разбираемся и учимся использовать в своих проектах. Загадочный infer и как его применять. ООП в TypeScript Возможности TypeScript в ООП (наследование, реализация интерфейсов, модификаторы доступа и т.д.)). Abstract class - мощный инструмент для ваших проектов. Учимся применять. Что делать если очень нужно множественное наследование? Mixins и Factories. Декораторы Декораторы и рефлексия. Что это? Зачем? Декораторы методов. Как их использовать и шде они могут пригодиться? Декораторы классов. Знакомимся с библиотекой reflect. Рассматриваем примеры из Angular. Пишем свои реализации. Пишем декораторы для свойств класса. Будущее декораторов в контексте TS5. Продажник: