Robot
Складчик
- #1
[НТМL Academy] TypeScript: Теория типов
- Ссылка на картинку
Курс познакомит вас с фундаментом, на котором построена вся магия TypeScript — с системой статического анализа типов данных. Вы узнаете о теории типов, научитесь на практике использовать аннотацию типов и обобщённое программирование, сможете управлять условными типами.
Программа курса
Раздел 1
Введение. Для чего нужен TypeScript
Достоинства и ограничения TypeScript. Настройка окружения для работы
— Что такое TypeScript и зачем он нужен
— Цель курса
— Тест: возможности TypeScript
— Песочница для проверки TypeScript-идей
— Особенности TypeScript
— Тест: назначения флагов компилятора
— Кейс: настройка TypeScript-окружения для работы
— Практика: настройка TypeScript-окружения для работы в редакторе кода
— Чек-лист для проверки корректности настройки редактора
Раздел 2
Эквивалентность типов
Типизация в TypeScript. Структура типа и эквивалентность функций
— Параллельные пространства имён: декларации и типы
— Эквивалентные и различные типы
— Важное значение примитивных типов
— Тест: примитивные типы. Использование, преобразование, обнаружение
— Внутренняя структура типа
— Функции и их эквивалентность
— Программирование на типах. Дженерики
— Кейс: варианты проставления аннотации типов
— Кейс: защита от значений непроверенного типа
— Кейс: система типов для описания объектной модели
— Практика: типизация функций на примере журнала операций
— Кейс: система типов для функций, работающих с записями
Раздел 3
Объединение и пересечение типов, специализация типов
Система типов и операции над типами. Интерфейсы и классы в Typescript
— Вертикаль во Вселенной типов, верхний и нижний типы
— Кейс: санитарная обработка внешних данных
— Специальные (специализированные) литеральные типы
— Тест: специализация примитивных типов строк, чисел и флагов
— Интерфейсы и их наследники
— Тест: поведение интерфейсов в TypeScript
— Перегрузка функций и специализация типов
— Кейс: создание интерфейсов функций, устойчивых к изменению типов значений параметров
— Классы и их интерфейсы
— Тест: поведение определений классов в TypeScript
— Объединение типов
— Кейс: специализация функциональных типов; ко- и контра-вариативность
— Пересечение типов, брендирование
— Кейс: типизация через брендирование на примере умного дома
— Практика: фабрика UI-компонентов
— Кейс: создание фабрики UI-компонентов
— Практика: система типов для unit-тестирования
— Кейс: создание системы типов для модульного тестирования
Раздел 4
Обобщенное программирование TypeScript
Типы структуры и функции в общем виде
— Обобщенные структурные типы
— Практика: система типов для получения отклика сервера на примере резервирования столика в ресторане
— Кейс: вариант оформления типов для API-обмена с удалённым сервером
— Практика: защита кода от данных непроверенного типа на примере корпоративного бизнес-приложения
— Кейс: вариант создания системы типов для обработки значений разных типов
— Обобщённые функции, ко- и контра-вариантность функций
— Обобщённый тип функции или функция обобщённого типа
— Практика: добавление новых операций к существующему классу на примере журнала обслуживания автомобилей
— Кейс: вариант реализации шаблона двойной диспетчеризации
Раздел 5
Манипуляция типами во время разработки
Условные, индексированные и строковые типы. Проекция типов. Создание прокси
— Условные типы
— Тест: ветвление типов
— Типы с доступом по индексу
— Тест: концепция индексированных типов
— Проекция типов
— Кейс: использование методов проекции и отражения типов
— Строковые типы
— Кейс: манипуляция типами - литеральные условные типы
— Практика: использование утилитарных условных типов
— Кейс: использование утилитарных типов при создании системы связанных типов
— Кейс: пошаговая демонстрация создания прокси для API
— Практика: создание наблюдаемых прокси на примере простых объектов
— Кейс: создание прокси для создания наблюдаемых свойств
Раздел 6
Что дальше?
— Использование TypeScript в ежедневной работе
— Популярные фреймворки и библиотеки
— Защита по другим фронтам — unit testing
— Кейс: запуск минимального приложения Angular TypeScript
— Кейс: запуск минимального приложения React TypeScript
— Кейс: запуск минимального приложения Vue TypeScript
— Борьба за качество ПО: TypeScript и не только
— Итоговый тест
Программа курса
Раздел 1
Введение. Для чего нужен TypeScript
Достоинства и ограничения TypeScript. Настройка окружения для работы
— Что такое TypeScript и зачем он нужен
— Цель курса
— Тест: возможности TypeScript
— Песочница для проверки TypeScript-идей
— Особенности TypeScript
— Тест: назначения флагов компилятора
— Кейс: настройка TypeScript-окружения для работы
— Практика: настройка TypeScript-окружения для работы в редакторе кода
— Чек-лист для проверки корректности настройки редактора
Раздел 2
Эквивалентность типов
Типизация в TypeScript. Структура типа и эквивалентность функций
— Параллельные пространства имён: декларации и типы
— Эквивалентные и различные типы
— Важное значение примитивных типов
— Тест: примитивные типы. Использование, преобразование, обнаружение
— Внутренняя структура типа
— Функции и их эквивалентность
— Программирование на типах. Дженерики
— Кейс: варианты проставления аннотации типов
— Кейс: защита от значений непроверенного типа
— Кейс: система типов для описания объектной модели
— Практика: типизация функций на примере журнала операций
— Кейс: система типов для функций, работающих с записями
Раздел 3
Объединение и пересечение типов, специализация типов
Система типов и операции над типами. Интерфейсы и классы в Typescript
— Вертикаль во Вселенной типов, верхний и нижний типы
— Кейс: санитарная обработка внешних данных
— Специальные (специализированные) литеральные типы
— Тест: специализация примитивных типов строк, чисел и флагов
— Интерфейсы и их наследники
— Тест: поведение интерфейсов в TypeScript
— Перегрузка функций и специализация типов
— Кейс: создание интерфейсов функций, устойчивых к изменению типов значений параметров
— Классы и их интерфейсы
— Тест: поведение определений классов в TypeScript
— Объединение типов
— Кейс: специализация функциональных типов; ко- и контра-вариативность
— Пересечение типов, брендирование
— Кейс: типизация через брендирование на примере умного дома
— Практика: фабрика UI-компонентов
— Кейс: создание фабрики UI-компонентов
— Практика: система типов для unit-тестирования
— Кейс: создание системы типов для модульного тестирования
Раздел 4
Обобщенное программирование TypeScript
Типы структуры и функции в общем виде
— Обобщенные структурные типы
— Практика: система типов для получения отклика сервера на примере резервирования столика в ресторане
— Кейс: вариант оформления типов для API-обмена с удалённым сервером
— Практика: защита кода от данных непроверенного типа на примере корпоративного бизнес-приложения
— Кейс: вариант создания системы типов для обработки значений разных типов
— Обобщённые функции, ко- и контра-вариантность функций
— Обобщённый тип функции или функция обобщённого типа
— Практика: добавление новых операций к существующему классу на примере журнала обслуживания автомобилей
— Кейс: вариант реализации шаблона двойной диспетчеризации
Раздел 5
Манипуляция типами во время разработки
Условные, индексированные и строковые типы. Проекция типов. Создание прокси
— Условные типы
— Тест: ветвление типов
— Типы с доступом по индексу
— Тест: концепция индексированных типов
— Проекция типов
— Кейс: использование методов проекции и отражения типов
— Строковые типы
— Кейс: манипуляция типами - литеральные условные типы
— Практика: использование утилитарных условных типов
— Кейс: использование утилитарных типов при создании системы связанных типов
— Кейс: пошаговая демонстрация создания прокси для API
— Практика: создание наблюдаемых прокси на примере простых объектов
— Кейс: создание прокси для создания наблюдаемых свойств
Раздел 6
Что дальше?
— Использование TypeScript в ежедневной работе
— Популярные фреймворки и библиотеки
— Защита по другим фронтам — unit testing
— Кейс: запуск минимального приложения Angular TypeScript
— Кейс: запуск минимального приложения React TypeScript
— Кейс: запуск минимального приложения Vue TypeScript
— Борьба за качество ПО: TypeScript и не только
— Итоговый тест
Зарегистрируйтесь
, чтобы посмотреть скрытый авторский контент.