Aspect Oriented Programming in C#
Are there any good resources to wrap my head around Aspect Oriented Programming?
PS: I need to understand AO programming, not the libraries or frameworks available for .NET or C# :)
Just to get your head around it: It is the ability to hook events such as: creation of objects, setting of properties, etc, and attach general functions to them, that will be populated with relevant context.
Because C# doesn't have an inbuilt facility for this, you need a framework, like PostSharp, to do 'bytecode weaving' (ie just writing code to actually make the calls, directly to your classes) to simulate it.
Aspect Oriented Programming means having a meta level where yo can define logging or security/access control features to interweave with your code instead of implementing these feature very time in your code. So instead of beeing one-dimensional, you have to program two-dimensional.
I know this may sound very esotheric but it is easy once you understood it.
AOP often works with proxy classes which intercept calls and do things in the background.
What a timely question?
Here is the podcast worth listening.
This will give you a good overview on what is AOP? where it can be used?
Hope that helps.
链接地址: http://www.djcxy.com/p/95168.html上一篇: 针对C#(.Net)的面向方面编程(AOP)解决方案及其特性
下一篇: 面向方面编程在C#中