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