面向切面编程
AOP(Aspect Oriented Programming)
一、概念
面向切面编程是一种通过横切关注点(Cross-cutting Concerns)分离来增强代码模块性的方法,它能够在不修改业务主体代码的情况下,对它添加额外的行为。
问题:比如一个系统提供很多接口,但是这些接口都有一些共性的逻辑,比如:鉴权、事务控制等。AOP 可以让我们把公共的功能,彻底拿出来,放到单独的地方,这样整个系统流程就变得纯粹和干净。
AOP 在 Java 世界谈论较多,但它并不是 Java 范畴的概念,他不依赖任何框架,也和编程语言本身无关。