Curso de TypeScript — do zero a um programa que se sustenta

Por Dorian Chávez, fundador da Hábil e arquiteto de integração. Assim ensinamos quem constrói sistemas que não podem falhar.

Para quem é: quem já fez o curso de Go desta casa, ou quem programa em JavaScript e quer parar de descobrir os erros em produção. Não se supõe experiência prévia com tipos: cada conceito é explicado quando aparece, e se explica por que ele existe, não só como se escreve.

O que você vai saber ao terminar: escrever um programa completo com tipos, entender o que escreveu e conseguir explicá-lo a outra pessoa.

O que você precisa antes de começar: um computador com Linux Mint e saber abrir um terminal. A Lição 1 instala tudo do zero.

O projeto que você vai construir

O revisor: uma API que consulta uma lista de serviços ao mesmo tempo e um painel web que mostra o relatório, com os tipos compartilhados entre os dois. É o mesmo problema do curso de Go, resolvido agora em TypeScript.

As dez lições

Lição O que você constrói O que você aprende
0 O que é TypeScript e o que NÃO é nada ainda (leitura) JS vs TS; os tipos são apagados na execução; o que protege e o que não; por que strict
1 Instalar o TypeScript no seu Linux Mint o ambiente e o seu primeiro programa Node LTS, tsc, editor, tsconfig estrito, executar e depurar
2 Tipos, funções e inferência as funções base do revisor primitivos, inferência, uniões e literais, narrowing, null e undefined
3 Objetos e o modelo de dados o modelo Servicio / Estado type vs interface, tipagem estrutural, readonly, uniões discriminadas
4 Coleções, genéricos e erros a lista de serviços e o relatório arrays, Map/Set, genéricos, tipos utilitários, erros
5 Assincronia: que revise tudo ao mesmo tempo o revisor concorrente event loop, promises, async/await, Promise.all vs allSettled, AbortController
6 Dados que chegam de fora validação de configuração e respostas validar na fronteira; tipos derivados do esquema
7 Módulos, testes e qualidade o projeto de verdade, com testes módulos ESM, testes com tabela de casos, lint e formatação
8 O servidor a API HTTP do revisor servidor HTTP, rotas tipadas, JSON, configuração, encerramento ordenado
9 A tela e o programa terminado o painel web e o pacote final React com TypeScript e hooks, tipos compartilhados, XSS, compilar e publicar

Ao final de cada lição há exercícios com as suas soluções. E o diário de bordo é seu: anote ali o que te custou.

Lições

  1. Lição 0 — O que é TypeScript e o que NÃO é
  2. Lição 1 — Instalar o TypeScript no seu Linux Mint
  3. Lição 2 — Tipos, funções e inferência
  4. Lição 3 — Objetos e o modelo de dados
  5. Lição 4 — Coleções, genéricos e erros
  6. Lição 5 — Assincronia: que revise tudo ao mesmo tempo
  7. Lição 6 — Dados que chegam de fora
  8. Lição 7 — Módulos, testes e qualidade
  9. Lição 8 — O servidor
  10. Lição 9 — A tela e o programa terminado