У меня проблема с созданием отчетов на основе Word для объекта «Клиент».
Обычно я делаю это, передавая Customer в класс, который знает, как создать документ Word, вставить закладки и т. Д.
Проблема с этим заключается в том, что я размещаю логику для извлечения и форматирования информации об объекте Customer в этом классе.
Я понимаю, что это плохо и нарушает принцип единственной ответственности.
Я подумал о создании другого класса, такого как «CustomerReportInfo», который принимает Custom и имеет всю логику, касающуюся форматирования и извлечения данных. Таким образом, класс, генерирующий Word, мал, и эти два могут меняться независимо друг от друга. 1009 *
Мне просто интересно, как этот класс должен называться? Я просмотрел список шаблонов и не вижу ничего, что соответствует описанию. Это не похоже на стратегию или прокси ... Это звучит как DTO, но DTO обычно являются глупыми классами без функциональности, не так ли?
Есть идеи, на какую модель это похоже?