Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание
Несколько слов о System.CodeDOM
Несколько слов о System.CodeDOM
Теперь, когда мы с вами выяснили, как создаются динамические компоновочные блоки с помощью System.Reflection.Emit и различных лексем CIL, я должен сообщить вам, что есть и другая (часто более простая) альтернатива. Платформа .NET предлагает технологию под названием модель DOM для программного кода (модель code DOM), которая позволяет представить структуру .NET-типа в независимых от языка терминах с помощью объектного графа. Построив такой граф с помощью членов пространства имен System.CodeDOM, вы получаете возможность динамически перевести его содержимое в файл программного кода, соответствующего любому языку (C#, Visual Basic .NET или любому языку стороннего поставщика, обеспечившего поддержку code DOM). Кроме того, пространство имен System.CodeDOM.Compiler и связанные с ним другие пространства имен могут использоваться для компиляции объектного графа, находящегося в памяти (или сохраненного) объекта в действительный статический компоновочный блок .NET.
К сожалению, в этой книге нет места для подробного обсуждения технологии code DOM. Поэтому если вам нужна дополнительная информация, выполните поиск по ключу "CodeDOM, quick reference" в документации .NET Framework 2.0 SDK.
- Природа программирования в терминах CIL
- Директивы, атрибуты и коды операций CIL
- Добавление и извлечение данных: стековая природа CIL
- Челночная технология разработки
- Директивы и атрибуты CIL
- Соответствие между типами библиотеки базовых классов .NET, C# и CIL
- Определение членов типов в CIL
- Анализ кодов операций CIL
- Создание компоновочного блока .NET в CIL
- Динамические компоновочные блоки
- Несколько слов о System.CodeDOM
- Резюме
- Соответствие между типами библиотеки базовых классов .NET, C# и CIL
- Ключевые слова
- Улучшенная стратегия вычисления предиката IN и условий, объединенных по OR
- 1.2.1. Ключевые слова и идентификаторы
- Распараллеливание на несколько процессоров
- Новые ключевые слова
- Определение пользовательского формата числовых данных
- Пример 12-8. Частота встречаемости отдельных слов
- Предисловие
- Предисловие Кое-что новенькое – поговорим напрямую
- 11.2. Технология принятия решения в условиях чрезвычайной ситуации
- Условные операторы