Service对象的定义是什么?

Max*_*ask 26 java design-patterns terminology

我一直在用PHP工作.但最近我被派去使用Java工作.在PHP中我曾经做过很多Singleton对象,但是这种模式在Java中与PHP中没有相同的含义.所以我想去一个实用工具类(一个静态方法的类),但我的主管不喜欢这种类,并要求我去寻找服务对象.所以我的猜测是服务对象只是一个带有构造函数的类,它实现了一些公共方法......我是对的吗?

Mar*_*ann 26

域驱动设计将服务定义为:

SERVICE是一种作为接口的操作,它独立于模型中,没有封装状态... [p.105]

是的,它是一个带有公共方法的类,但除此之外,它还实现了一个公开这些方法的接口.服务的核心是接口 - 实现它的类只是一个实现细节.

  • 是的,好吧,但是在 OO 中,Utility 类的整个概念就是代码异味。真正的 OO 类具有明确定义的职责...... (2认同)

xet*_*a11 6

我找到了服务对象的另一种定义,该定义被描述为具体类的接口,这些类将通过该接口设置的 API 定义提供某种服务。

关于微服务的 文章>服务对象的链接定义:

3:许多面向对象的设计者,包括我们自己,在领域驱动设计意义上使用术语“服务对象”来表示执行不依赖于实体的重要过程的对象。这与我们在本文中使用“服务”的概念不同。遗憾的是,“服务”一词具有两种含义,我们必须接受多义词。

我在这里理解的不是像将其定义为“接口”那样的技术方面,而是它所描述的设计概念。我也理解一个service object简单的类的域,就像它的责任一样。因此,如果您正在开发 Web 应用程序,您可能有一个服务对象,SecurityService它是SecurityController. 控制器调用服务来实际处理安全(域)特定的服务。