Как спроектировать класс Model в репозитории? - PullRequest
0 голосов
/ 10 июня 2018

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

1 Ответ

0 голосов
/ 12 июня 2018

В репозитории существует несколько подходов к проектированию модели в зависимости от необходимости.Таким образом, лучше сосредоточиться на потребностях бизнеса.Я попытаюсь объяснить немного.

Совокупный корень:

Если вы работаете в доменно-управляемом дизайне, обычно используется один объект на несколько таблиц.Это называется Совокупным Корнем.Совокупный корень может содержать несколько вложенных агрегатов.Итак, это выглядит как некоторая сложная иерархия классов.

Преимущество заключается в том, что ваша модель станет более дружественной к вашему домену, чем к вашей базе данных.Это действительно помогает постоянному развитию.Вместо этого основной фокус разработчика смещен с постоянных потребностей на домен.

Хотя это не часть вашего вопроса, это также помогает получить максимальную выгоду от полного ORM, если вы используете какой-либо.

Этот подходкак правило, перебор для небольших проектов.

Модель на таблицу:

Это очень простой подход, обычно используемый для небольших приложений;особенно, если вы не делаете DDD.Если ваше приложение больше ориентировано на базу данных (например, CRUD), чем на домен, тогда этот подход предпочтительнее.Возможно, вам не удастся использовать некоторые полезные функции полной ORM, такие как расширенные возможности отображения, отложенная загрузка и т. Д.

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