面向切面编程 AOP 和装饰器??

Posted lmh001

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向切面编程 AOP 和装饰器??相关的知识,希望对你有一定的参考价值。

 

1、AOP概念:面向切面编程,指扩展功能不修改源代码,将功能代码从业务逻辑代码中分离出来。

 

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

 

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

 

 

2、AOP特点:采用横向抽取机制,取代了传统纵向继承体系重复性代码。

 

 

装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有 插入日志、性能测试、事务处理等。装饰器是解决这类问题的绝佳设计,有了装 饰器,我们就可以抽离出大量函数中与函数功能本身无关的雷同代码并继续重用。 概括的讲,装饰器的作用就是为已经存在的对象添加额外的功能。 

 

以上是关于面向切面编程 AOP 和装饰器??的主要内容,如果未能解决你的问题,请参考以下文章

java aop面向切面编程

面向切面编程AOP之动态代理

基于标注的AOP面向切面编程

Python装饰器与面向切面编程

AOP 面向切面编程详解

spring框架学习——AOP( 面向切面编程)