Перейти к основному содержимому

TypeScript — чек-лист

Разработчику Архитектору

Дальше: Итоги и FAQ · Карта раздела

Загрузка вопросов…

Чек-лист самопроверки

Итоговая самопроверка по разделу — только в этой статье; в остальных главах остаются упражнения без дублирующих формулировок "готово, если…".

Пройдите блоки по порядку. Не отвечаете за минуту — откройте статью по ссылке.


Основы и экосистема

  1. Чем TypeScript отличается от JavaScript в runtime? → intro, Архитектура компиляции TypeScript и runtime
  2. Что делает tsc и куда деваются типы? → Архитектура компиляции TypeScript и runtime, Первая программа на TypeScript
  3. Роль tsconfig.json и флага strict? → Форматы и подключение TypeScript, Рекомендации по разработке на TypeScript
  4. Что такое tsserver и workspace version TS? → TypeScript Server
  5. Проверка типов (npm run typecheck) в CI? → Экосистема и архитектура TypeScript
  6. Где таблицы синтаксиса, а где учебные статьи? → Справочник по TypeScript, Справочник по TypeScript
  7. Знаете карту 18 блоков 301 (§1–§18)? → Справочник по TypeScript

Блоки справочника 301 (§1–§18)

  1. §1 Основы типизации, §2 Составные? → Типы данных и типизация в TypeScript, Коллекции и массивы в TypeScript
  2. §3 Union/intersection, §4 Функции? → Типы данных и типизация в TypeScript, Функции в TypeScript
  3. §5 Интерфейсы, §6 Классы? → Синтаксис и пунктуация TypeScript, Объекты и классы в TypeScript
  4. §7 Utility, §8 Advanced? → Типы данных и типизация в TypeScript, Дженерики в TypeScript
  5. §9 Модули/namespace, §10 Декларации? → Форматы и подключение TypeScript, Архитектура компиляции TypeScript и runtime
  6. §11 tsconfig, §12 Декораторы? → Форматы и подключение TypeScript, Декораторы в TypeScript
  7. §13 DOM, §14 Фреймворки? → События и обработка событий в TypeScript, TypeScript и React/TypeScript и Node.js
  8. §15 Паттерны, §16 Практики? → Паттерны в TypeScript, Рекомендации по разработке на TypeScript
  9. §17 CLI, §18 Расширение TS? → Первая программа на TypeScript, TypeScript Server

Типы и синтаксис

  1. Примитивы и специальные типы (unknown, never)? → Типы данных и типизация в TypeScript
  2. Чем any хуже unknown? → Типы данных и типизация в TypeScript, Рекомендации по разработке на TypeScript
  3. Union, intersection, discriminated union? → Типы данных и типизация в TypeScript, Операторы и условные ветвления в TypeScript
  4. interface и type — когда что выбирать? → Синтаксис и пунктуация TypeScript
  5. Narrowing — typeof, in, switch? → Операторы и условные ветвления в TypeScript
  6. readonly, optional ?, деструктуризация? → Переменные и константы в TypeScript
  7. Partial, Pick, Omit, Exclude, satisfies? → Типы данных и типизация в TypeScript 23a. Exclude / Extract для union ответов API? → 10 §Exclude
  8. Импорт только типов (import type)? → Синтаксис и пунктуация TypeScript
  9. Зачем TS, если типы не в runtime? → Типы данных и типизация в TypeScript, Архитектура компиляции TypeScript и runtime
  10. Утиная и структурная типизация — в чём разница? → Типы данных и типизация в TypeScript
  11. Типобезопасность и LSP (Лисков) в TS? → Типы данных и типизация в TypeScript
  12. Обязательна ли запись let x: T? → Переменные и константы в TypeScript
  13. DefinitelyTyped и @types/*? → Экосистема и архитектура TypeScript
  14. Транспиляция и проверка типов — в чём разница? → Архитектура компиляции TypeScript и runtime
  15. TypeScript 7.0 (Go), --checkers, side-by-side с 6.0? → Архитектура компиляции TypeScript и runtime, История TypeScript

Код — переменные, функции, ООП

  1. const по умолчанию, когда let? → Переменные и константы в TypeScript
  2. Как типизировать функцию и callback? → Функции в TypeScript
  3. Перегрузки (overloads)? → Функции в TypeScript
  4. Структурная типизация? → Типы данных и типизация в TypeScript, Объекты и классы в TypeScript
  5. private и # в классе — в чём разница? → Объекты и классы в TypeScript
  6. Array, tuple, Record, Map, Set? → Коллекции и массивы в TypeScript
  7. Циклы — for...of и for...in? → Циклы в TypeScript
  8. Примеси (mixins) и композиция — когда что? → Паттерны в TypeScript

Async, ошибки, продвинутое

  1. Promise<T> и async return type? → Асинхронное программирование в TypeScript
  2. LoadState union для UI? → Асинхронное программирование в TypeScript, TypeScript и React
  3. Result и throw, unknown в catch? → Обработка ошибок в TypeScript
  4. Дженерики <T>, keyof, Omit? → Дженерики в TypeScript 43a. Связанные generic (T extends Compat<F>), Path / PathType? → Дженерики в TypeScript 43b. PayloadMap[E], webhook handlers? → 24 §сопоставленные 43c. Labeled tuples, фиксированная длина? → Коллекции и массивы в TypeScript 43d. setTimeoutnumber или Node Timeout, ReturnType? → Асинхронное программирование в TypeScript
  5. Декораторы — когда да / нет? → Декораторы в TypeScript
  6. Generator / for await...of? → Генераторы и итераторы в TypeScript
  7. Паттерны — command union, factory, mixins? → Паттерны в TypeScript

Прикладное

  1. React — props, useState, события форм? → TypeScript и React
  2. Node — DTO, guard тела запроса, слои? → TypeScript и Node.js
  3. DOM-события и CustomEvent? → События и обработка событий в TypeScript
  4. TypeORM — entity и DTO? → TypeORM
  5. Monorepo — tsc -b, references, публикация NPM? → Экосистема и архитектура TypeScript, Форматы и подключение TypeScript

Практика перед сдачей раздела

  1. Собрали первую программу и запустили dist/?
  2. Сделали минимум один проект из простых приложений?
  3. Включили strict и прогнали tsc --noEmit без новых any?
  4. Прочитали FAQ и закрыли слабые пункты этого чек-листа?
  5. Понимаете, куда смотреть в Справочник по TypeScript, не заучивая его наизусть?

Готово, если на пункты 1–51 отвечаете своими словами, а пункты 52–56 выполнены на реальном коде.


Полный справочник

Учебный вход — карта. Таблицы и advanced — Справочник по TypeScript. Индекс без дублирования — Справочник по TypeScript.