Use case описывает конкретный сценарий приложения, а service — более общий термин. Его смысл зависит от слоя: domain service и application service решают разные задачи.
Чем отличается service от use case в слоистой архитектуре? Приведи конкретные примеры.
Use case описывает конкретный сценарий приложения, а service — более общий термин. Его смысл зависит от слоя: domain service и application service решают разные задачи.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Use case описывает конкретный сценарий приложения, а service — более общий термин. Его смысл зависит от слоя: domain service и application service решают разные задачи.
Например, PlaceOrder координирует проверку, резерв и сохранение заказа — это use case. Расчёт цены по доменным правилам может быть domain service, а HTTP-клиент склада — инфраструктурным сервисом. Не стоит спорить только о названиях классов: важны ответственность, зависимости и транзакционные границы. В некоторых проектах application service и use case называют один и тот же объект.