首页 > 解决方案 > 会话/缓存设计模式前面的服务

问题描述

我们有一系列存储在用户会话中的模型对象(尽管您可以将其视为任何缓存)。我们有一系列“服务”,位于充当它们的接口的前面。例如说地址是我们存储的东西之一。我们将在前面有一个基于地址的服务,它将公开 getAddress(),并检查会话是否存在。如果它存在,它只是返回它,如果它不存在,它会从某个地方获取它,将它存储在会话中并返回它。这是一种延迟加载的方法。

我相信这是一种常见的模式,但“系列服务”的名称是什么?我考虑过诸如 Delegate、Proxy、Facade、Loader 之类的名称,但这些名称似乎都不完全正确。

标签: design-patterns

解决方案


它被称为服务层。这是一种架构模式,其中服务在域逻辑之上形成一个抽象层。使用服务层可以使应用程序更易于维护,因为更改通常只能限制在应用程序中的特定层(例如持久层、服务层、表示层)。使用这种设计还可以更轻松地跨服务重用功能。


推荐阅读