AOP是什么

付詘結涑 1个月前 已收到2个回答 举报

情绪波动中 2星

共回答了93个问题采纳率:99.7% 评论

AOP是面向切面编程(Aspect-Oriented Programming)的缩写。
因为在传统的面向对象编程中,我们把一个应用按照功能拆分为模块,每个模块都有自己的类和方法,但有些功能却需要跨越模块实现,此时就需要在多个模块的代码中插入相同的处理逻辑,这样就会导致代码冗余、耦合性强、维护和调试困难等问题。
而AOP能够将这些相同的处理逻辑剥离出来,形成一个切面,然后在需要的位置切入代码,实现了功能的模块化,代码的清晰度和可重用性也得到了提升。
AOP还可以用于日志、事务、安全等方面。

18小时前

2

可以先生 2星

共回答了253个问题 评论

AOP为Aspect Oriented Programming的缩写,是面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。

AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。 AOP的出现弥补了OOP的这点不足,AOP 是一个概念,一个规范,本身并没有设定具体语言的实现,AOP是基于动态代理模式。AOP是方法级别的,要测试的方法不能为static修饰,因为接口中不能存在静态方法,编译就会报错。

AOP可以分离业务代码和关注点代码(重复代码),在执行业务代码时,动态的注入关注点代码。

切面就是关注点代码形成的类。Spring AOP中的动态代理主要有两种方式,JDK动态代理和CGLIB动态代理。

JDK动态代理通过反射来接收被代理的类,并且要求被代理的类必须实现一个接口。

16小时前

10
可能相似的问题

热门问题推荐

Copyright © 2024 微短问答 All rights reserved. 粤ICP备2021119249号 站务邮箱 service@wdace.com