У меня есть несколько базовых объектов, таких как Customer, Portfolio и ... с некоторой ассоциацией с другими объектами.Я легко могу отобразить необходимую информацию на веб-странице, читая значения объекта.Проблема в том, что мне делать, когда значение, связанное с объектом, вычисляется и возвращается методом, значение, которое имеет смысл только в определенном контексте и не может быть присоединено к объекту как переменная экземпляра?В этом случае, если у меня есть список, скажем, Users, я должен передать имя пользователя каждого пользователя методу, чтобы получить вычисленное значение.Это вызывает проблему, чтобы сохранить связь при отображении значений на странице.
Пример, чтобы прояснить это:
Приложение предоставляет пользователям возможность отслеживать действия друг друга, позволяя им добавлять тех, кого они хотят, в список.Если этот пользователь выполняет поиск пользователей, есть возможность следить за каждым возвращенным пользователем.Я хочу убедиться, что эта опция отключена для тех пользователей, за которыми уже следят.Эта функциональность обеспечивается методом, подобным isFollowed(String follower, String followee)
, который возвращает логическое значение.Как я могу связать эти логические значения с каждым пользователем в результатах поиска?
Решения:
Одна вещь, о которой я могу подумать, - это добавить переменную followed
в класс User.Но я не думаю, что это хороший подход, потому что эта переменная имеет смысл только в определенном контексте.Он не является частью класса User в домене.
Другой способ, о котором я могу подумать, - это использовать Украшение или Оболочки для расширения класса User и добавленияатрибут в дочернем классе.Но опять же, что, если у меня есть несколько объектов, которые должны быть в одном контексте.В этом случае я должен расширить их все с одним и тем же логическим атрибутом во всех классах.
Я надеюсь, что смогу прояснить.