Со временем я начал переходить на специализированные запросы.Что вы можете сделать, если вы хотите, чтобы ваш бэкэнд был универсальным, вы можете выбрать свойства из объекта для сериализации.Таким образом, вы сохраняете тяжелую внутреннюю OO-конструкцию с большим повторным использованием, но небольшим сетевым пространством.Обычно это делается с помощью JSON.
Что произойдет, если вы будете следовать многоуровневой архитектуре и принципам ОО - это то, что вы будете перетасовывать путь к большому количеству данных.Например, если ваш бизнес-уровень должен иметь четкое представление о слое постоянства, вам необходимо заполнить все поля данных.Поэтому я хотел бы забыть о чистом срезе и позволить постоянному объекту, связанному с БД, пройтись по слоям, чтобы я использовал ленивую загрузку, и только отпустить его перед сериализацией для клиента.