知识卡片

横切关注点与处理器串联

专业/工作 · 474.a.2

内容

日志记录、安全检查、错误处理这类操作被称为横切关注点——它们几乎每个处理器都需要,但和具体业务逻辑无关,直接写进每个处理器会造成重复代码。发散:这本质上是装饰器模式在函数式语言特性(高阶函数+闭包)加持下的轻量实现——不需要类继承体系,靠”接收函数、返回函数”就完成了行为包装,这正是[[方法与接收者]]之外Go处理组合问题的另一条路径。

参考来源

- 位置:《Go Web编程》第3章《接收请求》(源文件:_epub-src/OEBPS/text00016.html) - 结论依据:原文在该章节围绕“日志记录、安全检查、错误处理这类操作被称为横切关注点——它们几乎每个处理器都需要,但和具体业务逻辑无关,直接写…”给出定义、示例或限制条件;摘录中的术语、代码片段或对比关系直接支撑本卡片的结论。 - 原始内容:置之外,还可以通过 Server 结构对服务器进行更详细的配置,其中包括为请求读取操作设置超时时间、为响应写入操作设置超时时间以及为 Server 结构设置错误日志记录器等。 代码清单3-2和代码清单3-1的作用基本上是相同的,它们之间的唯一区别在于代码清单3-2可以通过 Server 结构对服务器进行更多的配置。 代码清单3-2 带有附…