深入理解Spring-AOP

2020-04-05  本文已影响0人  colde_包包白

1. AOP概述

1.1 什么是AOP

Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。
本质:在不改变原有逻辑的情况下增强横切逻辑。

1.2 解决了什么问题

1.2.1 业务场景分析
image.png

图中红框圈出来的地方为重复代码,而采用传统的OOP思想无法很好的解决这已问题,存在大量的重复劳动,且不易维护,并且与业务代码耦合。

1.2.2 AOP业务重构
image.png

AOP可以说是OOP的补充和完善。OOP通过引入封装、继承和多态来建立一种对象的层次结构,用于模拟公共行为的一个集合,但OOP无法很好的解决为分散的对象引入公共行为,AOP为OOP补足了这一块短板。

1.3 AOP适用场景

2. Spring AOP

image.png

3. 总结

AOP是OOP的延续,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。使用AOP时需梳理清晰当前增强功能是否适合避免滥用AOP,并提供清晰的说明文档进行说明,避免后续开发人员在代码阅读时忽略AOP增强功能。

上一篇 下一篇

猜你喜欢

热点阅读