AOP技术的诞生并不算晚,早在1990年开始,来自Xerox Palo Alto Research Lab(即PARC)的研究人员就对面向对象思想的局限性进行了分析。他们研究出了一种新的编程思想,借助这一思想或许能够经过减小代码重复模块从而帮助开发人员提升工做效率。随着研究的逐渐深刻,AOP也逐渐发展成一套完整的程序设计思想,各类应用AOP的技术也应运而生。html
AOP技术在Java平台下是最早获得应用的。就在PARC对于面向方面编程进行研究的同时,美国Northeastern University的博士生Cristina Lopes和其同事也开始了相似的思考。最终,美国国防先进技术研究计划署(Defense Advanced Research Projects Agency即DARPA)注意到了这项工做,并提供了科研经费,鼓励将两者的工做成果结合起来。他们经过定义一套Java语言的扩展系统,使开发者能够方便的进行面向方面的开发,这套扩展系统被称为AspectJ。以后,AspectJ在2002年被转让给Eclipse Foundation,从而成为在开源社区中AOP技术的先锋,也是目前最为流行的AOP工具。git
AOP(Aspect-Oriented Programming,面向切面的编程),它是能够经过预编译方式和运行期动态代理实如今不修改源代码的状况下给程序动态统一添加功能的一种技术。它是一种新的方法论,它是对传统OOP编程的一种补充。OOP是关注将需求功能划分为不一样的而且相对独立,封装良好的类,并让它们有着属于本身的行为,依靠继承和多态等来定义彼此的关系;AOP是但愿可以将通用需求功能从不相关的类当中分离出来,可以使得不少类共享一个行为,一旦发生变化,没必要修改不少类,而只须要修改这个行为便可。AOP是使用切面(aspect)将横切关注点模块化,OOP是使用类将状态和行为模块化。在OOP的世界中,程序都是经过类和接口组织的,使用它们实现程序的核心业务逻辑是十分合适。可是对于实现横切关注点(跨越应用程序多个模块的功能需求)则十分吃力,好比日志记录,权限验证,异常拦截等。github
通知(Advice): 通知描述了切面要完成的任务,同时还描述了什么时候执行这个任务。编程
链接点(Joinpoint): 程序中应用通知的地方称为链接点,这个点能够是方法被调用时,异常抛出时,甚至访问属性的时候。模块化
切入点(Pointcut): 切入点定义通知切入的一个或者多个链接点。wordpress
切面(Aspect): 切面就是通知和切入点的结合。通知和切入点共同定义了切面的所有内容:功能、时机、位置。工具
引入(Introduction): 容许咱们想现有类中增长属性和方法.post
目标(Target): 被通知的对象url
代理(Porxy): 向目标对象增长通知以后,建立的对象,由这个对象来访问实际的目标对象。spa
织入(Weaving): 被切面应用到目标对象来建立新的代理对象的过程。
配置型 ? no,这不是我须要的太麻烦了。对于新手瞬间懵逼了好吗?
传送地址 ->>>>>>>>>>>>>>> http://www.cnblogs.com/leoo2sk/archive/2010/11/30/aop-postsharp.html
咱们看这个AOP , 发现挺适合的......最后MDZZ,收费.收费的,收费的搞毛线啊~~~~~
TM逗我? just like PostSharp, but free as in free beer :和PostSharp 同样,但胜在免费。是否是爱上我了?嘿嘿,爱上做者去吧。
Nuget:上安装这个,看清楚了呀,等会又来讲,诶哟,楼主MDZZ不行啊!
SheepAspect : SAQL寻找方法规则