gpt4 book ai didi

design-patterns - 横切关注点示例

转载 作者:行者123 更新时间:2023-12-03 04:44:15 24 4
gpt4 key购买 nike

什么是横切关注点的好例子? wikipedia 上的医疗记录示例页面对我来说似乎不完整。

具体来说,从这个例子来看,为什么日志记录会导致代码重复(分散)? (除了诸如 log("....") 之类的简单调用之外,这似乎没什么大不了的)。

核心关注点横切关注点有什么区别?

我的最终目标是更好地理解 AOP。

最佳答案

在理解横切关注点之前,我们必须先了解关注点

A Concern is a term that refers to a part of the system divided on the basis of the functionality.

有两种类型的问题:

  1. 代表主要需求的单一和特定功能的关注点称为核心关注点

    系统的主要功能称为核心关注点。
    例如:业务逻辑
  2. 代表次要需求功能的关注点称为横切关注点或系统范围关注点

    横切关注点是适用于整个应用程序的关注点,它会影响整个应用程序。
    例如:日志记录、安全性和数据传输是应用程序的几乎每个模块都需要关注的问题,因此它们是跨领域的关注点。

Courtesy

enter image description here

该图代表了一个被分解为模块的典型应用程序。每个模块的主要关注点是为其特定领域提供服务。然而,每个模块还需要类似的辅助功能,例如安全日志记录和事务管理。横切关注点的一个例子是“日志记录”,它经常在分布式应用程序中使用,通过跟踪方法调用来帮助调试。假设我们在每个函数体的开头和结尾都进行日志记录。这将导致横切所有至少具有一个功能的类。

(Courtesy)

关于design-patterns - 横切关注点示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23700540/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com