У меня есть класс (назовем его MyService
), который принимает две зависимости в своем конструкторе. Первый не все, что имеет отношение к вопросу. Второй - PaymentDetails
. PaymentDetails живет дольше, чем MyService, который создается фабрикой для обработки этого конкретного запроса.
В MyService.process()
, это:
- делает что-то с первой зависимостью,
- создает объект
new TransactionDetails()
и устанавливает для него различные вещи,
- звонки
myPaymentDetails.setTransactionDetails( td );
- возвращает что-то, чтобы сказать, какая страница в мастере следует за следующей
PaymentDetails
по необходимости имеет много методов. Это объект в стиле Entity, в который встраивается информация, когда пользователь проходит по 5 страниц.
Меня беспокоит то, что, как написано, мой класс обслуживания зависит от всего PaymentDetails
, но вызывает только один единственный метод.
Это беспокоит меня, потому что:
- ограничит возможность повторного использования класса обслуживания
- Невозможно понять, каковы реальные зависимости, читая сигнатуры метода
Мой вопрос:
Как лучше всего это исправить, чтобы у моего класса обслуживания были минимальные зависимости?