Рекомендации по присвоению имен Чтение таблиц моделей в архитектуре CQRS? - PullRequest
1 голос
/ 24 февраля 2011

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

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

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

Не беспокойтесь, что мы связываем наш пользовательский интерфейс с базой данных модели чтения и веб-сервисами, используемыми для выполнения запросов? Или это является самой целью архитектуры CQRS, чтобы перенести всю сложность агрегирования данных в модель чтения, а не выполнять эту работу в веб-службах и клиенте запросов?

Может ли кто-нибудь привести примеры таблиц, которые они используют в своих денормализованных моделях чтения?

1 Ответ

2 голосов
/ 24 февраля 2011

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

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

Что касается примеров: Мои таблицы отражают путь к определенному представлению, для которого они созданы. Поэтому у меня есть, например, AdminUsersList или AdminProductsEditPrices. Последний содержит данные для веб-формы, доступной в / Admin / Products / Edit на вкладке Цены.

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

...