Главная страница   /   7. Создание кода при помощи переписывания IL (Метапрограммирование в .NET

Метапрограммирование в .NET

Метапрограммирование в .NET

Кевин Хазард

7. Создание кода при помощи переписывания IL

В этой главе:

  • Преимущества перезаписи кода
  • Использование библиотек для перезаписи сборок
  • Отладка внедренного кода

На протяжении части 2 (с начала главы 3) вы видели ряд техник и фреймворков, которые можно использовать для генерации кода на разных стадиях выполнения. Но есть одна область выполнения кода, к которой мы еще не обращались. Это после компиляции, когда ваш код был превращен в IL, который хранится в сборке. В этот момент ваш код находится в формате, который CLR использует для запуска кода, и большинство разработчиков считают, что сборка заморожена в этот момент – что она не может быть изменена. Но это не так!

В этой главе вы увидите, как переписывать сборки, чтобы добавить общие аспекты кода или инструментарий в код. Вы поймете преимущества внедрения кода и то, какие библиотеки вы должны использовать, чтобы получить эти преимущества. В конце концов, вы будете иметь мощный инструмент в вашем наборе инструментов метапрограммирования, который позволит вам получать небольшой код многоразового использования для различных приложений. Результатом является код, который выглядит маленьким, но содержит все реализации, которые вы хотите.

Как всегда, мы начнем с объяснения преимуществ внедрения кода.

7.1. Случай для внедрения кода

7.2. Создание фреймворка внедрения

7.3. Отладка внедренного кода

7.4. Резюме