2013-12-02 4 views
0

Я пытаюсь создать приложение, используя знания, полученные из Domain Driven Design.CRUD Создайте нового клиента с использованием DDD

Проблема заключается в том, что в моем приложении мне нужно создать нового клиента, который будет записывать адрес клиента, номер телефона, адрес электронной почты и т. Д., Я бы просто использовал стандартный стиль CRUD здесь, поскольку это действительно не действие на основе задачи ?

ответ

3

Если ваше приложение всегда будет хранить данные о клиентах в базе данных, вероятно, гораздо лучше использовать простое приложение стиля CRUD. Если запись клиента является частью более крупного приложения, то вполне разумно иметь форму для ввода данных клиента (например, имя, адрес, ...) - данные должны быть введены каким-то образом.

Просто имейте в виду различия между формами стиля на основе задач и CRUD: скажите, что вы хотите, чтобы клиент был отмечен как проверенный, и для вас есть состояние клиента, которое может быть «NEW» или «VERIFIED ». В приложении типа CRUD можно просто использовать поле выбора с двумя опциями «NEW» и «VERIFIED», которые изменяют поле состояния клиента. В пользовательском интерфейсе на основе задач вы должны иметь кнопку/ссылку в форме клиента, которая считывает «проверку» и запускает «задачу проверки», например, отправив команду «проверить клиента» на ваш уровень домена.

Обратите внимание, что домен-ориентированный дизайн ортогонален действиям на основе концепции. Они хорошо играют вместе, особенно когда вы используете CQRS, но оба они могут использоваться независимо друг от друга.

+0

ли вы сказать, CRUD нормально использовать для ввода данных сначала, то я могу пойти задача на основе впоследствии например, если я хотел, чтобы проверить пользователя? – Matt

+0

Извините, у меня есть проблемы, чтобы понять, что вы имеете в виду. Разве это не было бы дублированием усилий? –

1

Я не могу ответить на вопрос без более глубокого понимания контекста создания пользователя (это форма регистрации или что-то еще, что является целью этого, является ли эта мера некоторой сложной задачей, например покупкой , и т.д...).

Вы можете найти статью вдохновляя этого UDI Даан в: http://www.udidahan.com/2009/06/29/dont-create-aggregate-roots/

Смежные вопросы