Задать вопрос
@topuserman

Как разрешить архитектурную проблему?

У меня есть класс User, у которого есть метод getStatus.

Объект этого класса используется как самостоятельно, так и является зависимостью другой сущности - Group.

Возникла необходимость, сделать так, что результат метода getStatus, может изменяться в зависимости от некоторого состояния сущности Group.

Как это правильно архитектурно это решить ?

Чтобы сущность пользователя мог работать самостоятельно, но если он находится в контексте другой сущности, чтобы мог изменить результат метода ?
  • Вопрос задан
  • 225 просмотров
Подписаться 2 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 2
@quiex
Почитайте про закон Деметры
Ответ написан
Комментировать
@soloveid
Ну Вы сами подошли к более правильному решению.
Должна быть сущность, которая группирует пользователей и группы, и именно она будет
знать как пользователь связан и куда принадлежит, соответственно метод getStatus должен быть её.
Так вы не усложняете текущее решение (навороты в класс User и Group), а добавляете новую функциональность
с помощью добавления нового кода (знаком такой принцип?)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы