Criando um programa TypeScript com a API
Inicialize um programa do compilador e acesse o verificador de tipos
Criando um programa TypeScript com a API é uma aula grátis de TypeScript Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de TypeScript Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de TypeScript Academy inclui 4 aulas no total.
O que é a API do compilador?
O TypeScript expõe seus componentes internos do compilador por meio do pacote npm typescript. Você pode criar programas, inspecionar o verificador de tipos e analisar arquivos de origem programaticamente.
import ts from "typescript";
// Use ts.createProgram to startInstalando o pacote typescript
Instale o TypeScript como uma dependência regular, não apenas como devDependency, ao usar a API do compilador em suas ferramentas.
npm install typescript
# Also install types if needed
npm install --save-dev @types/nodeCriando um programa
ts.createProgram recebe uma matriz de caminhos de arquivos de entrada e opções do compilador, e retorna um objeto Program.
import ts from "typescript";
const program = ts.createProgram(["src/index.ts"], {
target: ts.ScriptTarget.ES2020,
module: ts.ModuleKind.CommonJS,
strict: true,
});Acessando arquivos de origem
Use program.getSourceFiles() para obter todos os arquivos da compilação ou getSourceFile para obter um caminho específico.
const sourceFiles = program.getSourceFiles();
sourceFiles.forEach(sf => {
if (!sf.isDeclarationFile) {
console.log(sf.fileName);
}
});Obtendo o verificador de tipos
O verificador de tipos é o núcleo da análise do TypeScript. Obtenha-o com program.getTypeChecker().
const checker = program.getTypeChecker();
// Now use checker to resolve types, symbols, etc.Lendo diagnósticos
Recupere os diagnósticos do compilador, como erros e avisos, para implementar ferramentas personalizadas de validação.
const diagnostics = ts.getPreEmitDiagnostics(program);
diagnostics.forEach(d => {
const msg = ts.flattenDiagnosticMessageText(d.messageText, "
");
console.log(msg);
});Lendo tsconfig.json
Use ts.readConfigFile e ts.parseJsonConfigFileContent para carregar as opções do compilador de um arquivo tsconfig.
const cfgFile = ts.readConfigFile("tsconfig.json", ts.sys.readFile);
const parsed = ts.parseJsonConfigFileContent(
cfgFile.config,
ts.sys,
process.cwd()
);
const program2 = ts.createProgram(parsed.fileNames, parsed.options);Resolução de símbolos
O verificador de tipos pode resolver símbolos — nomes que fazem referência a declarações — para inspecionar a que um determinado identificador se refere.
const sf = program.getSourceFile("src/index.ts")!;
ts.forEachChild(sf, node => {
if (ts.isVariableStatement(node)) {
const symbol = checker.getSymbolAtLocation(
node.declarationList.declarations[0].name
);
console.log(symbol?.getName());
}
});Emitindo a saída
Chame program.emit() para produzir JavaScript e arquivos de declaração, assim como ao executar tsc.
const emitResult = program.emit();
const exitCode = emitResult.emitSkipped ? 1 : 0;
process.exit(exitCode);Programas incrementais
Use ts.createIncrementalProgram para realizar análises repetidas mais rapidamente, reutilizando o estado de compilação anterior.
// Incremental compilation tracks which files changed
// to avoid reprocessing unchanged filesRecapitulação: fundamentos da API do compilador
A API do compilador do TypeScript permite criar programas, inspecionar arquivos de origem, consultar tipos por meio do verificador e emitir JavaScript — tudo a partir de código Node.js.
Verificação rápida
Qual método retorna o verificador de tipos do TypeScript a partir de um programa?
O que você aprendeu
A API do compilador do TypeScript começa com ts.createProgram. A partir do programa, você pode acessar arquivos de origem, o verificador de tipos, diagnósticos e emitir saída — a base para criar ferramentas de análise, geradores de código e verificadores de estilo.
Perguntas Frequentes
A aula “Criando um programa TypeScript com a API” é grátis?
Sim — o texto completo de “Criando um programa TypeScript com a API” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de TypeScript Academy, atualize para CoddyKit PRO. O curso de TypeScript Academy inclui 4 aulas no total.
O que vou aprender em “Criando um programa TypeScript com a API”?
Inicialize um programa do compilador e acesse o verificador de tipos Você pratica TypeScript Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar TypeScript Academy?
Nenhuma experiência prévia é necessária. TypeScript Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.
Quanto tempo leva a aula “Criando um programa TypeScript com a API”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de TypeScript Academy?
Sim. Cada aula de TypeScript Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Criando um programa TypeScript com a API
- Percorrendo o AST com visitantes
- Transformadores personalizados e geração de código
- Construindo uma ferramenta simples de análise de código