简介

来源:互联网 发布:大数据旅游与智慧旅游 编辑:程序博客网 时间:2024/04/24 18:29

AOP是OOP的延续,是(Aspect Oriented Programming)的缩写,意思是面向切面(方面)编程。

  主要的功能是:日志记录,性能统计,安全控制,事务处理,异常处理等等。

主要的意图是:将日志记录,性能统计,安全控制,事务处理,异常处理等代码从业务逻辑代码中划分出来,通过对这些行为的分离,我们希望可以将它们独立到非指导业务逻辑的方法中,进而改变这些行为的时候不影响业务逻辑的代码。

 可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AOP可以说也是这种目标的一种实现。

 另外需要提及的是,AOP、OOP在字面上虽然非常类似,但却是面向不同领域的两种

  设计思想。OOP(面向对象编程)针对业务处理过程的实体及其属性和行为进行抽象封装,

  以获得更加清晰高效的逻辑单元划分。

  而AOP则是针对业务处理过程中的切面进行提取,它所面对的是处理过程中的某个步

  骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果。这两种设计思想在目标上有

  着本质的差异。