Por que TypeScript é um must-have em 2024?
\n\nVocê já escreveu código JavaScript que funcionava "mais ou menos bem" e de repente falhava com o erro undefined is not a function? Se sim, você sabe como isso é irritante. O TypeScript resolve esse problema de uma vez por todas. Ele adiciona tipagem estrita ao JavaScript, torna o código previsível e evita bugs bobos na fase de compilação.
Mas há um detalhe: aprender TypeScript por uma documentação chata é um tédio mortal. É muito mais rápido e interessante assistir canais do YouTube e cursos de TypeScript, onde tudo é explicado com exemplos reais. Reunimos para você os melhores recursos que ajudarão a evoluir do zero até um desenvolvedor confiante.
\n\nA propósito, se você já trabalha com Python (como muitos leitores do PythonLib), ficará agradavelmente surpreso: o TypeScript adotou muitas boas ideias da tipagem estática que você conhece do mypy ou pydantic. Só que aqui tudo já vem "de fábrica".
Top canais do YouTube sobre TypeScript
\n\nO YouTube é o melhor amigo do autodidata. Lá você encontra desde aulas gratuitas até playlists completas. Aqui estão os canais que valem o seu tempo.
\n\n1. TypeScript — canal oficial
\nSim, o TypeScript tem seu próprio canal no YouTube. Lá são publicadas gravações de conferências, anúncios de novas versões e palestras técnicas aprofundadas dos criadores da linguagem. Não é para iniciantes, mas para quem quer entender "como funciona por baixo dos panos".
\n- \n
- O que assistir: playlist "What's new in TypeScript" — onde analisam as funcionalidades de cada nova versão. \n
- Nível: Intermediário+ \n
- Prós: fonte autoritária, informação em primeira mão. \n
- Contras: pouca prática, muita teoria. \n
2. Web Dev Simplified
\nO canal do Kyle é uma mina de ouro para iniciantes. Ele explica coisas complexas com palavras simples, usando exemplos visuais. Ele tem uma excelente playlist sobre TypeScript, onde aborda tipos, genéricos, tipos utilitários e muito mais.
\nExemplo de código da aula dele:
\n// Um genérico simples que recebe um array e retorna o primeiro elemento\nfunction getFirstElement<T>(arr: T[]): T | undefined {\n return arr[0];\n}\n\nconst numbers = [1, 2, 3];\nconst firstNumber = getFirstElement(numbers); // tipo: number | undefined\n\nconst strings = ['a', 'b', 'c'];\nconst firstString = getFirstElement(strings); // tipo: string | undefined\nKyle mostra como o TypeScript infere o tipo automaticamente e explica por que isso é legal.
\n- \n
- O que assistir: playlist "TypeScript Tutorial for Beginners". \n
- Nível: Júnior \n
- Prós: vídeos curtos (10-15 minutos), muita prática. \n
- Contras: faltam tópicos complexos como conditional types. \n
3. Fireship
\nSe você quer "atualizar" rapidamente o conhecimento ou aprender sobre um novo recurso em 100 segundos — Fireship é a sua escolha. O estilo dele são vídeos super dinâmicos com memes e edição rápida. Ele tem o vídeo icônico "TypeScript in 100 Seconds" e análises mais aprofundadas.
\nExemplo do vídeo dele sobre utility types:
\ninterface User {\n id: number;\n name: string;\n email: string;\n password: string;\n}\n\n// Atualiza parcialmente o usuário (todos os campos opcionais)\ntype PartialUser = Partial<User>;\n\n// Somente leitura\ntype ReadonlyUser = Readonly<User>;\n\n// Seleciona apenas os campos necessários\ntype PublicUser = Pick<User, 'id' | 'name' | 'email'>;\nFireship explica como esses tipos utilitários economizam horas de desenvolvimento.
\n- \n
- O que assistir: "TypeScript - The Basics" e "TypeScript Advanced Tricks". \n
- Nível: de Júnior a Sênior \n
- Prós: muito visu