Здравствуйте, допустим взять задание ex2-96 Разработка простого компонента "Избранные товары", - у меня есть два варианта развития событий:
1) Два GetList'a (выборка элементов, имеющих привязку к пользователям и выборка пользователей, сохранение ID обоих из выборок и дальнейшая работа с этими массивами ID) и, в общей сложности, 15 циклов foreach;
2) Несколько запросов к БД(GetList)c применением сложной логики при фильтрации (выборка элементов с привязкой к текущему пользователю, выборка элементов, понравившихся другим пользователям) и минимум циклов.
Какой из способов более корректный и идеологически верный(уменьшение количества запросов к БД или уменьшение кол-ва циклов)? Не будет ли считаться ошибкой решение первым способом?
1) Два GetList'a (выборка элементов, имеющих привязку к пользователям и выборка пользователей, сохранение ID обоих из выборок и дальнейшая работа с этими массивами ID) и, в общей сложности, 15 циклов foreach;
2) Несколько запросов к БД(GetList)c применением сложной логики при фильтрации (выборка элементов с привязкой к текущему пользователю, выборка элементов, понравившихся другим пользователям) и минимум циклов.
Какой из способов более корректный и идеологически верный(уменьшение количества запросов к БД или уменьшение кол-ва циклов)? Не будет ли считаться ошибкой решение первым способом?