Подтвердить что ты не робот

Каково определение объекта службы?

Я много работал с PHP. Но недавно я был отправлен на работу с использованием Java. В PHP я использовал много объектов Singleton, но этот шаблон не имеет того же значения в Java, что и в PHP. Поэтому я хотел пойти на класс утилиты (класс со статическим методом), но моему начальнику не нравятся такие классы и просят меня пойти на объект сервисов. Поэтому я предполагал, что объект службы - это просто класс с конструктором, который реализует некоторые общедоступные методы... Я прав?

4b9b3361

Ответ 1

Domain-Driven Design определяет Сервис как:

Служба SERVICE - это операция, предлагаемая в качестве интерфейса, который стоит отдельно в модели, без инкапсуляции состояния... [p. 105]

Да, это класс с общедоступными методами, но в дополнение к этому он реализует интерфейс, который предоставляет эти методы. По своей сути Сервис - это интерфейс - класс, который его реализует, - это просто деталь реализации.

Ответ 2

Я нашел другое определение для объекта службы, а не тот, который описывается как интерфейс для конкретных классов, которые собираются предоставить определенную услугу через это определение API, установленное интерфейсом.

Статья о настройке Microservices > Ссылка для объекта службы:

3: Многие объектно-ориентированные проектировщики, включая нас самих, используют термин "служебный объект" в смысле "Управление доменом" для объекта, который выполняет значительный процесс, который не привязан к сущности. Это другая концепция того, как мы используем "сервис" в этой статье. К сожалению, термин "служба" имеет оба значения, и мы должны жить с полисом.

То, что я понимаю здесь, это не технический аспект, как определение его как "интерфейса", а скорее концепция дизайна, которую он описывает. Я также понимаю service object просто область класса, такую ​​как его ответственность. Поэтому, если вы разрабатываете веб-приложения, у вас может быть объект службы SecurityService, который является компонентом SecurityController. Контроллер вызывает службу для фактической обработки специальных служб безопасности (домена).