Kompilace a generování dynamického zdrojového kódu

.NET zahrnuje mechanismus označovaný jako model Code DOCUMENT Object Model (CodeDOM), který vývojářům programů, které generují zdrojový kód, generovat zdrojový kód v několika programovacích jazycích za běhu na základě jednoho modelu, který představuje kód k vykreslení.

Prvky CodeDOM jsou vzájemně propojeny, aby vytvořily datovou strukturu známou jako graf CodeDOM, který modeluje strukturu některého zdrojového kódu.

Obor System.CodeDom názvů definuje typy, které mohou představovat logickou strukturu zdrojového kódu nezávisle na konkrétním programovacím jazyce. Obor System.CodeDom.Compiler názvů definuje typy pro generování zdrojového kódu z grafů CodeDOM a správu kompilace zdrojového kódu v podporovaných jazycích. Dodavatelé kompilátoru nebo vývojáři mohou rozšířit sadu podporovaných jazyků.

Modelování zdrojového kódu nezávislé na jazyce může být užitečné, když program potřebuje vygenerovat zdrojový kód pro programový model v několika jazycích nebo pro nejistý cílový jazyk. Někteří návrháři například používají CodeDOM jako rozhraní abstrakce jazyka k vytvoření zdrojového kódu ve správném programovacím jazyce, pokud je k dispozici podpora CodeDOM pro tento jazyk.

.NET zahrnuje generátory kódu a kompilátory kódu pro CSharpCodeProvider, JScriptCodeProvidera VBCodeProvider.

Reference

  • System.CodeDom

    Definuje prvky, které představují prvky kódu v programovacích jazycích, které cílí na modul CLR (Common Language Runtime).

  • System.CodeDom.Compiler

    Definuje rozhraní pro generování a kompilaci kódu za běhu.