Вообщем, хочу сделать API для своего мобильного приложения.
Допустим, у меня есть Product(id,name,categories(list),picture,description,ect)
И в какой-то ситуации мне в приложении нужно вывести просто список Product.
Как я понимаю, для этого можно использовать какой-то DTO: ProductListItem(name,picture) и передать его.
Потом мне нужно показать более детальную информацию о продукте, тогда мне нужно использовать уже другой DTO ProductInfo(name,picture,description) и передать его.
1. Хороший ли это способ работы с DTO?
2. В данной ситуации почти для каждого действия пользователя мне нужно отправлять запрос на сервер для получения конкретного DTO. Как можно улучшить эффективность данного подхода?
Для удобства вы можете использовать ModelMapper (modelmapper.org/), чтобы быстро конвертировать Entity в DTO.
А так, наверное я бы так и реализовал... Правда, я и сам пока изучаю Spring....
Подход вполне хороший. Он хорош тем, что твоему коллеге не придется гадать, в какой ситуации какие поля заполнять. Но всего хорошо в меру. Если у тебя подобных кейсов очень много, то описывать под каждый отдельный ДТО может оказаться слишком затратно, и к тому же, коллега запутается в их огромном количестве.