Используйте класс со структурой, которая отвечает вашей потребности. Мартин Фаулер имеет одну аналогичную технику под названием DataTransferObject (DTO), в котором вы передаете объектную модель вместо получения данных, используя несколько вызовов (предполагаемые вызовы базы данных), снижая стоимость.
Преимущество по сравнению с шаблоном строителя:
- Структура класса не имеет дополнительной логики, означает, что ее легче считать (меньше логики)
- Не создавайте Конструктор делает реальные работы Запах кода, снова облегчает чтение кода
- Операция дешевая, поскольку вы просто передаете ссылки и не создаете совершенно новый объект. Особенно, когда структура данных большая.
Недостаток: объект находится в изменчивом состоянии.