TypeScript
Полный курс TypeScript: от базовых типов до generics, utility types, декораторов и реальных паттернов. Строгая типизация для JavaScript.
Чему ты научишься
Курс включает
Программа курса
26 уроков · 44 уроков · 35 упражнений
Введение в TypeScript
Что такое TS, зачем нужен, компилятор tsc, первая программа
- Что такое TypeScript? +10 XP
- Основы синтаксиса +15 XP
- TypeScript vs JavaScript +10 XP
Базовые типы
string, number, boolean, any, unknown, void, never, null, undefined
- Примитивные типы +10 XP
- Когда указывать типы +15 XP
Массивы и кортежи
Array<T>, T[], readonly arrays, tuples, rest elements
- Типизация массивов +10 XP
- Кортежи (Tuples) +15 XP
Объектные типы и Type Alias
type alias, optional, readonly, nested types, index signatures
- Объектные типы +10 XP
- Практика: объекты +15 XP
Интерфейсы
interface, extends, implements, declaration merging, interface vs type
- Interface +10 XP
- implements +15 XP
Union типы
union |, narrowing, discriminated unions, exhaustive checks
- Union типы +10 XP
- Практика: union +15 XP
Литеральные типы и Enum
string/number literals, const assertions, enum, const enum
- Литеральные типы +10 XP
- Практика: литералы +15 XP
Type Narrowing
typeof, instanceof, in, user-defined type guards, assertion functions
- Сужение типов +10 XP
- Практика: narrowing +15 XP
Типизация функций
function types, overloads, optional/rest params, callbacks
- Типы функций +10 XP
- Практика: функции +15 XP
Generics: основы
generic функции, интерфейсы, классы, constraints, keyof
- Введение в Generics +10 XP
- Constraints и keyof +15 XP
Utility Types
Partial, Required, Pick, Omit, Record, Readonly, Exclude, Extract, ReturnType
- Встроенные Utility Types +10 XP
- Практика: utility types +15 XP
Классы в TypeScript
access modifiers, parameter properties, abstract, static
- Классы с типизацией +10 XP
- Практика: классы +15 XP
Conditional и Mapped Types
conditional types, infer, mapped types, template literal types
- Conditional Types +10 XP
- Практика: продвинутые типы +15 XP
Type Assertions и satisfies
as, satisfies, non-null !, const assertion, когда использовать
- Type Assertions +10 XP
Модули и Declaration Files
import type, .d.ts, declare, @types, ambient modules
- Модули в TypeScript +10 XP
- tsconfig.json +10 XP
TypeScript и DOM
HTMLElement типы, event types, querySelector generics
- Типизация DOM +10 XP
- Практика: DOM +15 XP
Декораторы
class, method, property decorators, Angular/NestJS/TypeORM
- Декораторы +10 XP
TypeScript с API
typed fetch, generic API client, response types, Zod
- Типизированный fetch +10 XP
- Практика: API +15 XP
Обработка ошибок в TypeScript
typed errors, custom error classes, Result pattern, never type
- Типизация ошибок +15 XP
Паттерны TypeScript
builder, event emitter, state machine — с типизацией
- Typed Patterns +15 XP
Миграция JS → TypeScript
стратегия, allowJs, @ts-check, постепенная типизация
- Миграция на TypeScript +10 XP
Проект: Typed Utility Library
Generic утилиты: groupBy, retry, debounce — типизированные
- Typed утилиты +15 XP
Проект: Generic Data Store
CRUD с generics, фильтрация, сортировка
- Generic Store +15 XP
Проект: Kanban Board
Интерактивная Kanban-доска: колонки, карточки, drag & drop, typed state
- Архитектура Kanban +15 XP
Проект: TypeScript Quiz
Викторина по TypeScript: вопросы, ответы, счёт, результат
- TypeScript Quiz +15 XP
Финальный проект: Task Manager
Полностью типизированное приложение: generics, unions, utility types
- Архитектура +10 XP
- Реализация +15 XP
Требования
Никаких предварительных знаний не требуется — начинаем с нуля
Вопросы по курсу
Нужен ли опыт программирования?
Как проходят уроки?
Сколько времени нужно на курс?
Получу ли я сертификат?
Готов начать?
Запишись бесплатно и начни писать код прямо сейчас. Первый результат через 5 минут.
Начать обучение