Документация MSDN для внедрения политики имеет довольно четкое объяснение:
Приложения включают в себя сочетание бизнеса
логика и сквозные проблемы, и
два, как правило,
смешанный - который может сделать код
труднее читать и поддерживать. Каждое задание
или особенность приложения
упоминается как «беспокойство». Обеспокоенность
которые реализуют функции
объект в приложении, такой как
бизнес-логика, основные проблемы.
Межсекторальные проблемы являются
необходимые задачи, функции или
процессы, которые являются общими для всех
разные объекты - например,
регистрация, авторизация, проверка,
и приборы. Цель
блок приложения внедрения политики
это разделить основные проблемы и
сквозные проблемы.
Проще говоря, блок PI позволяет разработчикам определять набор политик, определяющих поведение объектов в системе. Таким образом, ваша основная бизнес-логика, такая как код, который вычисляет прибыль на единицу в течение финансового года (одна проблема), отделена от регистрации этого выполнения логики (другая, но чаще используемая задача).
В той же документации говорится, что блок PI является , а не AOP, потому что:
- Он использует перехват для включения только обработчиков предварительной обработки и обработчиков последующей обработки.
- Он не вставляет код в методы.
- Он не обеспечивает перехват для конструкторов классов.
Так что попытка взглянуть на PI с точки зрения АОП может немного испачкать воду.