Подтвердить что ты не робот

Аспектно-ориентированное программирование на С#

Есть ли хорошие ресурсы для обертывания вокруг Аспектно-ориентированного программирования?

PS: Мне нужно понять программирование AO, а не библиотеки или фреймворки, доступные для .NET или С#:)

4b9b3361

Ответ 1

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

Поскольку у С# нет встроенного средства для этого, вам понадобится фреймворк, например PostSharp, для "перекодирования байт-кода" (т.е. просто для написания кода для фактического вызова, непосредственно для ваших классов) для имитации.

Ответ 2

Какой своевременный вопрос?

Здесь стоит подкаст, заслуживающий прослушивания.
Это даст вам хороший обзор того, что такое АОП? где его можно использовать?

Надеюсь, что это поможет.

Ответ 5

Аспектно-ориентированное программирование означает наличие мета-уровня, в котором yo может определять функции ведения журнала или безопасности/контроля доступа, чтобы переплетаться с вашим кодом, а не внедрять эту функцию очень долго в вашем коде. Таким образом, вместо одномерного, вам нужно запрограммировать двумерные.

Я знаю, это может звучать очень сложно, но это легко, как только вы это поняли.

AOP часто работает с прокси-классами, которые перехватывают вызовы и делают что-то в фоновом режиме.