Аспектно-ориентированное программирование в [закрытом] C#

Можно расшириться..\frag до его полного пути с путем твердости:

PS > resolve-path ..\frag 

Попытка нормализовать путь с помощью объединения () метод:

[io.path]::Combine("fred\frog",(resolve-path ..\frag).path)
47
задан tshepang 6 November 2013 в 17:23
поделиться

3 ответа

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

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

55
ответ дан 26 November 2019 в 19:48
поделиться

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

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

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

3
ответ дан 26 November 2019 в 19:48
поделиться

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

Вот подкаст, который стоит послушать.
Это даст вам хорошее представление о том, что такое АОП? где это можно использовать?

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

3
ответ дан 26 November 2019 в 19:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: