Capítulo 4. Conceção de tipos
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Mostra-me os teus fluxogramas e esconde as tuas tabelas, e eu continuarei a ser confundido. Mostra-me as tuas tabelas e, normalmente, não precisarei dos teus fluxogramas; eles serão óbvios.
Fred Brooks, The Mythical Man Month (Addison-Wesley Professional)
A linguagem da citação de Fred Brooks está ultrapassada, mas o sentimento permanece verdadeiro: o código é difícil de compreender se não conseguires ver os dados ou os tipos de dados sobre os quais opera. Esta é uma das grandes vantagens de um sistema de tipos: ao escreveres os tipos, torna-os visíveis para os leitores do teu código. E isto torna o teu código compreensível.
Outros capítulos cobrem os detalhes básicos dos tipos do Typescript: como usá-los, inferi-los, transformá-los e escrever declarações com eles. Este capítulo discute o design dos tipos em si. Os exemplos neste capítulo são todos escritos com o TypeScript em mente, mas a maioria das ideias são aplicáveis de forma mais ampla.
Se escreveres bem os teus tipos, então, com sorte, os teus fluxogramas também serão óbvios.
Item 29: Prefere tipos que representem sempre estados válidos
Se desenhares bem os teus tipos, o teu código deve ser simples de escrever. Mas se conceberes mal os teus tipos, nenhuma quantidade de inteligência ou documentação te salvará. O teu código será confuso e propenso a bugs.
Uma chave para ...