认识AOP
面向切面编程(设计思想源于代理设计模式)是软件编程思想发展到一定阶级的产物,是面向对象编程的有益补充.AOP一般适用于具有横切伙计的场合,如访问控制,事物管理,性能检测等.
为什么用到AOP?
日志,异常处理,事物控制,都是一个健壮的业务系统所必须的.但是为了保证系统的健壮可用,就要在众多的业务方法中反复编写类似的代码,使得原本就很复杂的业务代码变得更加复杂.业务功能的开发者还要关注这些"额外"的代码是否正确处理,是否有遗漏.
在业务系统中,总有些散落,渗透到系统各处且不得不处理的事情,这些穿插在既定业务中的操作就是所谓的"横切逻辑",也称切面.我们希望的是无须编写显式的调用,在需要的时候,系统能够"自动"调用所需的功能,这就是AOP要解决的主要问题.