Курс по TypeScript — от нула до програма, която се държи

От Dorian Chávez, основател на Hábil и архитект на интеграции. Така обучаваме тези, които изграждат системи, които не могат да се провалят.

За кого е: за този, който вече е минал курса по Go на тази къща, или който програмира на JavaScript и иска да престане да открива грешките в продукция. Не се предполага предишен опит с типове: всяко понятие се обяснява, когато се появи, и се обяснява защо съществува, а не само как се пише.

Какво ще умееш накрая: да напишеш цялостна програма с типове, да разбираш това, което си написал, и да можеш да го обясниш на някой друг.

Какво ти трябва, преди да започнеш: компютър с Linux Mint и да умееш да отваряш терминал. Урок 1 инсталира всичко от нулата.

Проектът, който ще изградиш

revisor: API, което проверява списък от услуги едновременно, и уеб табло, което показва отчета, със споделени типове между двете. Това е същият проблем като в курса по Go, решен сега в TypeScript.

Десетте урока

Урок Какво изграждаш Какво научаваш
0 Какво е TypeScript и какво НЕ е още нищо (четене) JS срещу TS; типовете се изтриват при изпълнение; какво пазят и какво не; защо strict
1 Инсталиране на TypeScript на твоя Linux Mint средата и първата ти програма Node LTS, tsc, редактор, строг tsconfig, изпълнение и дебъгване
2 Типове, функции и извеждане базовите функции на revisor примитиви, извеждане, обединения и литерали, стесняване на типа (narrowing), null и undefined
3 Обекти и моделът на данните модела Servicio / Estado type срещу interface, структурно типизиране, readonly, дискриминирани обединения
4 Колекции, генерици и грешки списъка с услуги и отчета масиви, Map/Set, генерици, помощни типове, грешки
5 Асинхронност: да проверява всичко едновременно едновременния revisor цикъл на събитията (event loop), обещания, async/await, Promise.all срещу allSettled, AbortController
6 Данни, които идват отвън валидация на конфигурация и отговори валидиране на границата; типове, изведени от схемата
7 Модули, тестове и качество истинския проект, с тестове ES модули (ESM), тестове с таблица от случаи, linter и форматиране
8 Сървърът HTTP API на revisor HTTP сървър, типизирани маршрути, JSON, конфигурация, коректно спиране
9 Екранът и завършената програма уеб таблото и крайния пакет React с TypeScript и hooks, споделени типове, XSS, компилиране и публикуване

В края на всеки урок има упражнения с техните решения. А дневникът е твой: записвай там това, което ти е костало усилие.

Уроци

  1. Урок 0 — Какво е TypeScript и какво НЕ е
  2. Урок 1 — Инсталиране на TypeScript на твоя Linux Mint
  3. Урок 2 — Типове, функции и извеждане
  4. Урок 3 — Обекти и моделът на данните
  5. Урок 4 — Колекции, генерици и грешки
  6. Урок 5 — Асинхронност: да проверява всичко едновременно
  7. Урок 6 — Данни, които идват отвън
  8. Урок 7 — Модули, тестове и качество
  9. Урок 8 — Сървърът
  10. Урок 9 — Екранът и завършената програма