Créer un programme TypeScript avec l’API
Initialisez un programme de compilation et accédez au vérificateur de types
Créer un programme TypeScript avec l’API est une leçon TypeScript Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage TypeScript Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours TypeScript Academy comprend 4 leçons au total.
Qu’est-ce que l’API du compilateur ?
TypeScript expose les composants internes de son compilateur par l’intermédiaire du paquet npm typescript. Vous pouvez créer des programmes, inspecter le vérificateur de types et analyser des fichiers source par programmation.
import ts from "typescript";
// Use ts.createProgram to startInstaller le paquet typescript
Installez TypeScript comme dépendance ordinaire, et pas seulement comme dépendance de développement, lorsque vous utilisez l’API du compilateur dans vos outils.
npm install typescript
# Also install types if needed
npm install --save-dev @types/nodeCréer un programme
ts.createProgram accepte un tableau de chemins de fichiers d’entrée et des options du compilateur, puis renvoie un objet Program.
import ts from "typescript";
const program = ts.createProgram(["src/index.ts"], {
target: ts.ScriptTarget.ES2020,
module: ts.ModuleKind.CommonJS,
strict: true,
});Accéder aux fichiers source
Utilisez program.getSourceFiles() pour obtenir tous les fichiers de la compilation, ou getSourceFile pour un chemin précis.
const sourceFiles = program.getSourceFiles();
sourceFiles.forEach(sf => {
if (!sf.isDeclarationFile) {
console.log(sf.fileName);
}
});Obtenir le vérificateur de types
Le vérificateur de types est au cœur de l’analyse de TypeScript. Obtenez-le avec program.getTypeChecker().
const checker = program.getTypeChecker();
// Now use checker to resolve types, symbols, etc.Lire les diagnostics
Récupérez les diagnostics du compilateur, c’est-à-dire les erreurs et les avertissements, afin d’implémenter des outils de validation personnalisés.
const diagnostics = ts.getPreEmitDiagnostics(program);
diagnostics.forEach(d => {
const msg = ts.flattenDiagnosticMessageText(d.messageText, "
");
console.log(msg);
});Lire tsconfig.json
Utilisez ts.readConfigFile et ts.parseJsonConfigFileContent pour charger les options du compilateur depuis un fichier 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);Résolution des symboles
Le vérificateur de types peut résoudre les symboles — des noms qui font référence à des déclarations — afin d’inspecter ce vers quoi pointe un identifiant donné.
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());
}
});Générer la sortie
Appelez program.emit() pour produire des fichiers JavaScript et de déclaration, comme lors de l’exécution de tsc.
const emitResult = program.emit();
const exitCode = emitResult.emitSkipped ? 1 : 0;
process.exit(exitCode);Programmes incrémentiels
Utilisez ts.createIncrementalProgram pour accélérer les analyses répétées en réutilisant l’état d’une compilation précédente.
// Incremental compilation tracks which files changed
// to avoid reprocessing unchanged filesRécapitulatif : notions de base de l’API du compilateur
L’API du compilateur TypeScript vous permet de créer des programmes, d’inspecter des fichiers source, d’interroger les types avec le vérificateur et de générer du JavaScript, le tout depuis du code Node.js.
Vérification rapide
Quelle méthode renvoie le vérificateur de types TypeScript à partir d’un programme ?
Ce que vous avez appris
L’API du compilateur TypeScript commence par ts.createProgram. Depuis le programme, vous pouvez accéder aux fichiers source, au vérificateur de types, aux diagnostics et à la génération de sortie — les fondations nécessaires pour créer des outils d’analyse, des générateurs de code et des outils de vérification du code.
Questions Fréquemment Posées
La leçon « Créer un programme TypeScript avec l’API » est-elle gratuite ?
Oui — le texte complet de « Créer un programme TypeScript avec l’API » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours TypeScript Academy, passe à CoddyKit PRO. Le cours TypeScript Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Créer un programme TypeScript avec l’API » ?
Initialisez un programme de compilation et accédez au vérificateur de types Tu pratiques TypeScript Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer TypeScript Academy ?
Aucune expérience préalable n'est requise. TypeScript Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Créer un programme TypeScript avec l’API » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon TypeScript Academy ?
Oui. Chaque leçon TypeScript Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Créer un programme TypeScript avec l’API
- Parcourir l’AST avec des visiteurs
- Transformateurs personnalisés et génération de code
- Créer un outil simple d’analyse statique