TypeScript é uma linguagem que adiciona tipos ao JavaScript. Você escreve o código dizendo que tipo de dado cada variável e função espera, e o compilador avisa dos erros antes de o programa rodar.
Como funciona
Todo código JavaScript válido também é TypeScript válido. A diferença é que você pode anotar os tipos. Navegadores e o Node.js não executam TypeScript diretamente: o código é convertido para JavaScript antes, em uma etapa chamada compilação.
Nessa etapa, o compilador verifica se os tipos fazem sentido. Se você tentar somar um número com um texto onde isso não é permitido, ele mostra o erro no editor.
npm install --save-dev typescript
npx tsc arquivo.tsA configuração do projeto fica no arquivo tsconfig.json.
Exemplo prático
Imagine uma função que calcula o preço final de um pedido. Em JavaScript puro, alguém pode passar o valor como texto por engano e só descobrir o problema em produção.
Em TypeScript, você declara os tipos:
function precoFinal(valor: number, desconto: number): number {
return valor - valor * desconto;
}
precoFinal("100", 0.1); // erro apontado pelo compiladorO editor marca a chamada errada na hora, antes de qualquer cliente ver o problema.
Para que serve
O TypeScript serve para:
- Encontrar erros cedo, ainda no editor.
- Facilitar a manutenção de projetos grandes e de times com várias pessoas.
- Melhorar o autocompletar e a navegação pelo código.
- Documentar, pelos tipos, o que cada função espera e devolve.
Para quem usa agentes de IA para programar, os tipos funcionam como uma rede de segurança: se o agente gerar código incompatível, o compilador acusa o erro, o que ajuda a revisar. Muitos SDKs de IA também oferecem suporte a TypeScript.
Cuidados
Tipos só valem em tempo de desenvolvimento. Dados que chegam de fora, como respostas de API, ainda precisam ser validados quando o programa roda. Além disso, há uma pequena curva de aprendizado e uma etapa extra de compilação.
Diferença entre TypeScript e JavaScript
JavaScript não exige tipos e executa direto. TypeScript acrescenta tipos e precisa ser compilado para JavaScript. Em troca do trabalho extra, entrega mais segurança e melhor suporte do editor.