Categoria

TypeScript

Tipos básicos: string, number, boolean, any, unknown, never
TypeScript

Tipos básicos: string, number, boolean, any, unknown, never

O TypeScript estende o JavaScript adicionando um sistema de tipos estáticos. Isso significa que você pode declarar explicitamente que tipo de valor uma variável deve armazenar, e o compilador verificará se você está usando esse valor corretamente ao longo do código. Os tipos básicos — string, number, boolean, any, unknown e never — formam a fundação sobre a qual todos os outros tipos são construídos.

05/05/2026
Tipos literais e enums
TypeScript 05/05/2026

Tipos literais e enums

Em TypeScript, tipos literais permitem especificar exatamente quais valores são permitidos para uma variável ou parâmetro. Diferentemente de tipos amplos como string ou number, um tipo literal restringe o valor a um conjunto específico de opções.

Tipos utilitários avançados: Exclude, Extract, NonNullable, ReturnType
TypeScript 05/05/2026

Tipos utilitários avançados: Exclude, Extract, NonNullable, ReturnType

TypeScript oferece um conjunto de tipos utilitários que transformam tipos existentes em novos tipos, reduzindo a repetição de código e aumentando a segurança de tipos. Enquanto tipos básicos como Partial<T>, Pick<T, K> e Omit<T, K> operam sobre propriedades de objetos, os tipos avançados trabalham diretamente com uniões de tipos e funções.

Tipos utilitários: Partial, Required, Pick, Omit, Record
TypeScript 05/05/2026

Tipos utilitários: Partial, Required, Pick, Omit, Record

Os tipos utilitários são ferramentas nativas do TypeScript que permitem transformar tipos existentes de maneira flexível e reutilizável. Introduzidos para aumentar a produtividade do desenvolvedor, eles reduzem a necessidade de criar tipos manualmente, aproveitando o sistema de tipos estáticos da linguagem. Em vez de redefinir variações de um mesmo tipo, você aplica transformações predefinidas.

tsconfig.json: as opções que realmente importam
TypeScript 05/05/2026

tsconfig.json: as opções que realmente importam

O arquivo tsconfig.json é o coração da configuração do TypeScript. Ele informa ao compilador tsc como processar seu código, quais arquivos incluir, para qual versão do JavaScript compilar e quais regras de tipo aplicar. Quando você executa tsc sem argumentos, o compilador procura automaticamente por um tsconfig.json no diretório raiz do projeto.

Template literal types avançados
TypeScript 05/05/2026

Template literal types avançados

Template literal types são uma poderosa feature do TypeScript que permite manipular tipos de strings em tempo de compilação. Diferente dos template literals do JavaScript, que operam em valores em tempo de execução, os template literal types trabalham exclusivamente no sistema de tipos.

Template literal types
TypeScript 05/05/2026

Template literal types

Template literal types são uma feature poderosa do TypeScript introduzida na versão 4.1 que permite construir tipos baseados em strings dinâmicas usando a mesma sintaxe de template strings do JavaScript, mas operando no nível de tipos. Diferentemente das template strings do JavaScript, que produzem valores em tempo de execução, os template literal types geram novos tipos em tempo de compilação.

Testes tipados com Jest e ts-jest
TypeScript 05/05/2026

Testes tipados com Jest e ts-jest

A tipagem estática em testes não é um luxo — é uma necessidade para projetos que almejam robustez. Quando escrevemos testes em JavaScript puro, erros como undefined is not a function só aparecem em runtime. Com TypeScript, muitos desses erros são capturados durante a compilação, antes mesmo do teste executar.

This types: tipando o contexto de execução
TypeScript 05/05/2026

This types: tipando o contexto de execução

O this em JavaScript é uma das fontes mais frequentes de bugs e confusão. Diferente de linguagens como Java ou C#, onde this sempre se refere à instância atual da classe, em JavaScript o valor de this é determinado dinamicamente no momento da chamada da função.

Soundness vs completeness no sistema de tipos
TypeScript 05/05/2026

Soundness vs completeness no sistema de tipos

Em teoria de sistemas de tipos, dois conceitos são fundamentais para avaliar a qualidade de um type checker: soundness (solidez) e completeness (completude). Compreender essa dicotomia é essencial para qualquer desenvolvedor TypeScript que deseje usar a linguagem de forma consciente e produtiva.