30.11.2018

DTO vs POCO vs Value Object

Иногда возникает путаница, когда разработчики применяют терминологию DTO vs POCO vs Value Object. Я нашел хорошую статью, из которой привожу краткую выжимку.

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

Value Object — это полноценный член вашей доменной модели, может содержать логику, обычно они не используются для передачи информации между приложениями.

POCO (Plain Old CLR Object) означает использование настолько простых классов насколько возможно для моделирования предметной области. POCO классы могут содержать логику.

При этом можно привести следующую зависимость между терминами.
DTO != Value Object
DTO ⊂ POCO
Value Object ⊂ POCO

Комментариев нет:

Отправить комментарий