Hoje, estamos empolgados em compartilhar os próximos passos que estamos dando para melhorar radicalmente o desempenho do TypeScript.
O principal diferencial do TypeScript é proporcionar uma experiência de desenvolvimento excepcional. No entanto, à medida que o código cresce, o TypeScript nem sempre consegue acompanhar o aumento das maiores bases de código. Desenvolvedores em projetos grandes frequentemente enfrentam longos tempos de carregamento e verificação, precisando escolher entre um tempo de inicialização razoável do editor ou uma visão completa do código-fonte. "Sabemos que os desenvolvedores valorizam a capacidade de renomear variáveis com confiança, encontrar todas as referências a uma função específica e navegar pelo código sem atrasos", afirmam os desenvolvedores do projeto.
Para atender a essas necessidades, começamos a trabalhar em uma versão nativa do compilador e das ferramentas do TypeScript. Essa implementação nativa promete melhorar drasticamente o tempo de inicialização do editor, reduzir os tempos de compilação em até 10 vezes e diminuir significativamente o uso de memória. Esperamos que uma prévia dessa implementação nativa do tsc, capaz de realizar verificação de tipos via linha de comando, esteja disponível até meados de 2025, com uma solução completa para compilações de projetos e um serviço de linguagem até o final do ano.
Em termos de desempenho, nossa implementação nativa já consegue carregar muitos projetos populares em TypeScript, incluindo o próprio compilador. Os tempos de execução do tsc em alguns repositórios populares no GitHub variam, mas os resultados já mostram melhorias significativas. Embora ainda não tenhamos todas as funcionalidades, esses números representam um aumento de performance em relação à verificação da maioria das bases de código.
Os editores são o local onde os desenvolvedores passam a maior parte do tempo, e o desempenho é crucial. Com nossa nova implementação, esperamos oferecer experiências de editor extremamente rápidas. Por exemplo, ao usar a base de código do Visual Studio Code como referência, o tempo atual para carregar todo o projeto em um computador rápido é de cerca de 9,6 segundos. Com o serviço de linguagem nativo, esse tempo cai para aproximadamente 1,2 segundos, resultando em uma melhoria de 8 vezes na carga do projeto no editor.
Recentemente, lançamos o TypeScript 5.8, e o TypeScript 5.9 está a caminho. A base de código em JS continuará a se desenvolver na série 6.x e o TypeScript 6.0 introduzirá algumas desativações e mudanças para alinhar com a nova base de código nativa.
Quando a nova base de código nativa atingir paridade suficiente com o TypeScript atual, será lançada como TypeScript 7.0. Embora alguns projetos possam migrar para o TypeScript 7 assim que for lançado, outros poderão ter dependências que exigem o uso do TypeScript 6. Reconhecendo o papel fundamental do TypeScript no ecossistema de desenvolvimento JS, continuaremos a manter a base de código em JS na linha 6.x até que o TypeScript 7+ alcance maturidade e adoção suficientes.
Nos próximos meses, compartilharemos mais sobre essa iniciativa emocionante, incluindo detalhes sobre desempenho, uma nova API de compilador, LSP e mais. Convidamos todos a participar de um AMA no Discord da Comunidade TypeScript no dia 13 de março, às 10 AM PDT | 5 PM UTC. Um aumento de 10 vezes no desempenho representa um salto significativo na experiência de desenvolvimento em TypeScript e JavaScript, e esperamos que todos compartilhem nossa empolgação por esse esforço!
?si=OaEgTg6ROtfYDYLt
Confira os últimos vídeos publicados no canal