DTO может иметь методы экземпляра, возвращающие полученные значения?

Когда-либо приемлемо для DTO иметь методы экземпляра, которые возвращают полученные значения на основе данных DTO? Или DTOs должен быть чистыми контейнерами данных без дополнительных методов (кроме методов считывания/методов set)?

Пурист во мне говорит, что это далеко к легкому для бизнес-логики для сползания в такие методы. Однако, если (например), DTO совместно используется через прикладные уровни, то, возможно, существует аргумент в пользу того, чтобы иметь такие методы на DTO.

Каковы Ваши представления об этом? Есть ли когда-нибудь ситуации, где это приемлемо, или этого вида вещи нужно избежать? И почему/почему нет?

8
задан KarstenF 12 February 2010 в 22:02
поделиться

1 ответ

У DTO не должно быть поведения, это просто контейнеры для передачи данных через границы процесса и должен состоять только из сеттеров / получателей.

Этого следует избегать любой ценой, иначе это будет истолковано как неправильное применение шаблона DTO.

8
ответ дан 5 December 2019 в 20:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: