Может ли DTO иметь методы экземпляра, возвращающие производные значения? - PullRequest
8 голосов
/ 13 февраля 2010

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

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

Что вы думаете по этому поводу? Есть ли ситуации, когда это приемлемо, или следует избегать такого рода вещей? И почему / почему нет?

1 Ответ

7 голосов
/ 13 февраля 2010

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...