O TypeScript surgiu inicialmente como uma linguagem com o simples propósito de adicionar tipagem em cima do JavaScript. Conforme novas versões foram lançadas, ela se tornou cada vez mais poderosa e hoje é capaz de muitas coisas que você talvez não saiba. Nesse artigo, vamos entender qual a verdadeira utilidade do TypeScript e como desbloquear o melhor do seu potencial.
Antes de colocar a mão na massa e escrever código, vamos falar um pouco sobre qual os benefícios de uma linguagem tipada. Quem já programou JavaScript puro (sem tipagem) sabe que a ausência de tipos remove várias barreiras e torna a escrita do código muito mais prática. Entretanto, conforme o tamanho do código cresce e o número de pessoas trabalhando no projeto aumenta, o que antes era um benefício pode se tornar justamente o contrário.
Apesar desse ponto de vista não ser unânime, o fato do crescimento do TypeScript é um indicativo de que muitos desenvolvedores possuem esse sentimento
No desenvolvimento de software, geralmente existem 4 fases onde são gerados feedback de problemas, ou seja, momentos em que são detectadas falhas no sistema que demandam uma correção. Cada fase acontece em um momento diferente e demanda um custo cognitivo maior.
💡 “Custo cognitivo” aqui se refere ao custo entre abandonar contexto de uma tarefa e precisar retomar posteriormente, quanto mais tempo passa, mais carga mental pode ser necessária para compreender tudo novamente.
As fases de feedback são:
Considerando essas fases e o custo de identificar um problema em cada um delas, fica constatado o óbvio: é muito melhor ter erros de compilação do que bugs encontrados pelo usuário final.
Agora vamos dar uma olhada em alguns exemplos de como usar o typescript para além de meros tipos simples. Cada exemplo mostra uma forma diferente de obter novos tipos, sendo os principais objetivos: evitar repetição (quanto maior é a reutilização, mais fácil é identificar efeitos colaterais em mudanças) e aumentar precisão (quanto maior a precisão, menos margem para erros).
string, especificamos exatamente quais os valores esperados.💡 Uma forma simples de entender generics no TypeScript é imaginar eles como parâmetros. Assim como funções recebem parâmetros comuns, elas também recebem parâmetros de tipos. Outros tipos também podem aceitar generics, funcionando também como parâmetros.
const, mas efetivamente constante), o operador as const pode tornar os tipos mais específicos.Esse artigo acaba por aqui. A ideia dele foi te convencer da importância de melhorar os erros em tempo de compilação, além de trazer alguns exemplos que sirvam de inspiração quando que você for escrever suas interfaces e types. Da próxima vez que for declarar um tipo, utilize um pouco mais de tempo para pensar como implementá-lo de modo mais eficiente. Até mais!