Using AOP in DotNet - DotNetRu/BrandBook GitHub Wiki

Дмитрий Егоров «Использование АОП в .NET»

Аспектно-ориентированное программирование (АОП) — широко распространённая практика во многих популярных фреймворках, таких как Angular или Spring. В ASP.NET мы привычно используем этот архитектурный подход при работе с контроллерами, что натолкнуло нас на мысль масштабировать АОП на другие слои приложений.

Благодаря подходу АОП мы получаем возможность декларативно управлять поведением кода и инкапсулировать сквозную функциональность, не засоряя основную логику бизнес-кейсов. В .NET существует как минимум четыре механизма для реализации АОП: классические объектно-ориентированные декораторы, посткомпиляция, динамические прокси, а также новая технология Interseptor в C# 12.

Дмитрий расскажет о своём опыте использования каждого из этих механизмов АОП, их преимуществах, ограничениях и особенностях. Кроме того, затронет вопрос перехвата зависимостей из контейнера внедрения зависимостей (DI) для реализации внутренних механизмов АОП с целью обеспечения гибкости и расширяемости кода.


Доклад представил Дмитрий Егоров в рамках Встречи SpbDotNet №102.

Слайды

Слайды

Видео

https://www.youtube.com/watch?v=1V-Ws1moGls