Поделиться через


Динамическое создание и компиляция исходного кода

В среду .NET Framework включен механизм, который называется моделью объектов документов кода (CodeDOM), позволяющий разработчикам программ, генерирующих исходный код, создавать код на нескольких языках программирования во время выполнения на основе единой модели, предоставляющей код для визуализации.

Для представления исходного кода элементы CodeDOM связываются друг с другом, образуя структуру данных, известную как граф CodeDOM, которая моделирует структуру некоторого исходного кода.

Пространство имен System.CodeDom определяет типы, с помощью которых логическая структура исходного кода может быть представлена независимо от конкретного языка программирования. Пространство имен System.CodeDom.Compiler определяет типы, используемые для генерации исходного кода из графов CodeDOM и для управления компиляцией исходного кода на поддерживаемых языках. Набор поддерживаемых языков может быть расширен разработчиками или поставщиками компиляторов.

Независимое от языка моделирование исходного кода может быть полезно, если программа должна создавать исходный код для модели программы на нескольких языках или если конечный язык заранее не определен. Например, некоторые конструкторы используют модель CodeDOM в качестве интерфейса абстракции от языка для получения исходного кода на требуемом языке программирования, если имеется поддержка CodeDOM для этого языка.

В платформе .NET Framework содержатся генераторы кода и компиляторы для языков C#, JScript и Visual Basic.

В этом подразделе

Ссылка

  • System.CodeDom
    Определяет элементы, представляющие элементы кода на языках программирования, предназначенных для общеязыковой среды выполнения.

  • System.CodeDom.Compiler
    Определяет интерфейсы для генерации и компиляции кода во время выполнения.

Связанные подразделы

  • Краткий справочник по CodeDOM
    Предоставляет разработчикам быстрый способ поиска элементов CodeDOM, представляющих элементы исходного кода.