Capítulo 9. Escrever e executar o teu código
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Este capítulo é um pouco confuso: cobre alguns problemas que surgem ao escrever código (não tipos), bem como problemas que podes encontrar ao executar o teu código.
Item 72: Prefere as funcionalidades ECMAScript àsfuncionalidades TypeScript
A relação entre o TypeScript e o JavaScript mudou ao longo do tempo. Quando a Microsoft começou a trabalhar no TypeScript em 2010, a atitude predominante em torno do JavaScript era que ele era uma linguagem problemática que precisava ser corrigida. Era comum que frameworks e compiladores source-to-source adicionassem recursos ausentes, como classes, decoradores e um sistema de módulos ao JavaScript. Com o Typescript não foi diferente. As primeiras versões incluíam versões caseiras de classes, enums e módulos.
Com o tempo, o TC39, o órgão de padrões que governa o JavaScript, adicionou muitos desses mesmos recursos ao núcleo da linguagem JavaScript. E os recursos que eles adicionaram não eram compatíveis com as versões que existiam no Typescript. Isso deixou a equipe do TypeScript em uma situação complicada: adotar os novos recursos do padrão ou manter o código existente?
O TypeScript optou em grande parte pela primeira opção e acabou por articular o seu atual princípio de funcionamento: o TC39 define o tempo de execução, enquanto o TypeScript inova apenas no espaço de tipos.