Capítulo 5. A falta de fundamento e o tipo qualquer
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Os sistemas de tipos eram tradicionalmente assuntos binários: ou uma linguagem tinha um sistema de tipos totalmente estático ou um totalmente dinâmico. O TypeScript desfoca a linha, porque o seu sistema de tipos é opcional e gradual. És livre de adicionar tipos a partes do teu programa mas não a outras.
Isso é essencial para migrar as bases de código JavaScript existentes para o TypeScript pouco a pouco(Capítulo 10). A chave para isso é o tipo any, que efetivamente desativa a verificação de tipo para partes do seu código. É ao mesmo tempo poderoso e propenso a abusos. Aprende a usar any sabiamente é essencial para escrever TypeScript eficaz. Este capítulo mostra como limitar as desvantagens do any e, ao mesmo tempo, manter seus benefícios.
O tipo any é apenas o exemplo mais extremo do problema mais geral de falta de solidez: quando o tipo estático de um símbolo não corresponde ao seu tipo em tempo de execução. Mesmo que elimines todos os anys do teu código, podes ainda cair em armadilhas de solidez. O item 48 apresenta algumas delas e mostra como evitá-las.
Item 43: Utiliza o âmbito mais restrito possível para quaisquer tipos
Considera este código:
declarefunctiongetPizza():Pizza;functioneatSalad(salad:Salad){/* ... */}functioneatDinner(){constpizza=getPizza();eatSalad(pizza);// ~~~~~// Argument ...