Compiler et générer du code source dynamique

.NET inclut un mécanisme appelé CodeDOM (Code Document Object Model) qui permet aux développeurs d’émettre du code source pour générer du code source dans plusieurs langages de programmation au moment de l’exécution, en fonction d’un modèle unique qui représente le code à restituer.

Pour représenter le code source, les éléments CodeDOM sont liés entre eux pour former une structure de données appelée graphique CodeDOM, qui modélise la structure d’un code source.

L’espace de noms System.CodeDom définit les types qui peuvent représenter la structure logique du code source, indépendamment d’un langage de programmation spécifique. L’espace de noms System.CodeDom.Compiler définit les types pour la génération du code source à partir des graphiques CodeDOM et la gestion de la compilation du code source dans les langages pris en charge. Les fournisseurs de compilateurs ou les développeurs peuvent étendre l’ensemble des langages pris en charge.

La modélisation de code source indépendante du langage peut s’avérer précieuse quand un programme a besoin de générer du code source pour un modèle de programme dans plusieurs langages ou pour un langage cible indéterminé. Par exemple, certains concepteurs utilisent le CodeDOM comme interface d’abstraction de langage pour produire du code source dans le langage de programmation approprié, si la prise en charge CodeDOM de ce langage est disponible.

.NET inclut des générateurs et des compilateurs de code pour CSharpCodeProvider, JScriptCodeProvider et VBCodeProvider.

Référence

  • System.CodeDom

    Définit les éléments qui représentent des éléments de code dans les langages de programmation qui ciblent le Common Language Runtime.

  • System.CodeDom.Compiler

    Définit les interfaces de génération et de compilation du code au moment de l’exécution.

  • CodeDOM Quick Reference fournit un moyen rapide aux développeurs de rechercher les éléments CodeDOM qui représentent des éléments de code source.