方面(计算机编程)

程序的一个方面是链接到程序的许多其他部分的功能,但与程序的主要功能无关。一个方面横切了该计划的核心问题,因此违反了其试图封装无关功能的关注点的分离。例如,记录代码可以穿越许多模块,但是记录的方面应与IT交叉切割的模块的功能问题分开。将记录和持久性诸如业务逻辑之类的方面隔离是面向方面的编程(AOP)范式的核心。

方向取向不仅限于编程,因为它可以通过需求启发,规范和设计来识别,分析,跟踪和模块化问题。方面可以通过允许功能性和非功能性行为来穿越其他任何问题,而不仅仅是将非功能问题映射到功能要求。

面向方面的软件开发的一种观点是,该程序的每个主要功能,核心关注(业务逻辑)或跨切割问题(其他功能)是一个方面,并且通过它们编织在一起(一个过程也称为组成) ,最终从各个方面产生了整体。这种方法称为纯粹的方面编程,但是混合方法更常用。功能问题可能会跨越非功能或功能问题(例如,需要更多功能会损害移动性)。类似于AOP中的纯方法的表示和组成的统一方法称为多维表示。