最近看了一些关于AOP(Aspect Oriented Programming)的东西,感觉不错,偶有所得。
AOP其实是定义一种自己的语法规范,然后使用一个源代码处理器,根据这种语法将代码重新展开,感觉就像C,C++语句的宏、模板类,但是更加高级,可以在代码的适当位置(例如符合某种条件的代码片断之前、或者之后),加入自己的代码。
这种做法的好处就是把原来紧密耦合的代码可以分割成独立的模块,最典型的例子就是日志。
这个技术会对于程序设计、系统设计很有好处,使得模块的划分更加灵活。
这种技术正在起步之中,会有很大的发展空间,建议大家共同学习,共同研究一下。