Вопрос

В чем разница между Самоанализом и Рефлексией в .NET

Это было полезно?

Решение

Самоанализ был введен с FxCop в 2004 году как альтернатива Рефлексии :

Что нового в FxCop 1.30, так это то, что теперь он выполняет анализ с помощью техники, называемой самоанализом. Использование механизма самоанализа позволяет проводить гораздо более быстрый анализ и поддерживает многопоточный анализ.В отличие от движка Reflection engine из предыдущих версий, в движке Introspection engine анализируемые сборки не заблокированы, поэтому вам не нужно закрывать FxCop для исправления и перекомпиляции из этих собраний.Наконец, механизм Интроспекции предлагает гораздо более богатую инфраструктуру анализа по сравнению с механизмом отражения.

Другие советы

Это две части одного целого.

Самоанализ относится к способности класса заглядывать "внутрь" самого себя и видеть, например, какие параметры принимает метод, каковы имена его членов и т.д.

Рефлексия - это конкретное название того, как .NET реализует самоанализ.Другие языки могут называть это как-то по-другому (C ++ называет свой ограниченный самоанализ RTTI для получения информации о типе во время выполнения).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top