面向方面编程中的对称和非对称

Symmetric and Asymmetric in Aspect Oriented Programming

我听说过面向方面编程中的对称和非对称,但我不明白它们是什么。事实上,从一篇论文中,它说:

Symmetric: All concerns are modularized with the same kind of module
Asymmetric: Different module kind for crosscutting concerns

能否详细解释一下,并举个例子?

谢谢。

不对称方面意味着您有 2 个独立的模块;

  • 你的基础程序
  • 方面(其中方面是抽象的代码片段,可以在程序的多个地方使用,以避免代码重复或分散和纠结或系统之间的依赖关系 | 也称为横切关注点)

然后在编译(预编译时)之前将它们编织在一起以制作程序。

对称方面 意味着您的关注点在基本程序模块本身中被抽象化。 (它们也可以编织在一起来制作你的程序)