AOP的全称是Aspect-oriented Programming。在网上很多地方都将AOP翻译成“面向方面编程”,我觉得这样的翻译不利于对AOP概念的理解,在中文中,如果“方面”前面没有修饰词,“方面”是一个没有意义的词语。“面向方面编程”,那这个“方面”是什么?我觉得将Aspect翻译成“外表”,也比“方面”容易理解。我想我们使用AOP的目的是在对象的外部(外表)去扩展对象的功能,而尽量避免去改动对象的内部。在AOP中,我们通过在类的不同级别的外表(类/方法/属性)上提供Attribute/Aspect来扩展类的功能。
不知道这样理解对不对?请大家谈谈自己对这个概念的理解。
推荐一篇介绍AOP的不错的文章:http://www.cnblogs.com/dudu/articles/5167.aspx原文地址: http://www.c-sharpcorner.com/Code/2002/Nov/aop.asp