У меня есть некоторые иерархические xml -подобные данные. Для простоты скажем, что его сельскохозяйственное животное связано и выглядит так:
<Barn currentStable = 1>
<Stable number=1>
<Animal name="Mark">
</Stable>
<Stable stallNumber=2>
<Animal name="Paul">
</Stable>
</Barn>
У меня есть классы моделей, которые инкапсулируют данные. Класс Barn отслеживает текущую конюшню и ведет список всех объектов конюшни. Класс Stable знает номер своей конюшни и имеет ссылку на свое животное. Животное знает свое имя. Все эти классы используют сеттеры / геттеры, которые запускают события, которые мои объекты представления используют для обновления. Это прекрасно работает.
Представления имеют ссылки на различные объекты модели и передают модели своим конструкторам
Они могут обновлять свойства модели с помощью методов set / getters et c. Это прекрасно работает.
Моя проблема в том, что я не уверен, как справиться с тем, что происходит при изменении текущей стабильной версии. Когда текущая стабильная версия изменяется, представления должны получать данные новой модели, поскольку в настоящее время они отображают старую стабильную. Как лучше всего сообщить об этом go? Я подумал о том, чтобы иметь событие класса Barn, когда происходит currentStableChanges, и когда это происходит, мой BarnView просто как бы связывает метод setModel () через все представления. Но мне было интересно, есть ли другой более правильный способ делать что-то, возможно, с точки зрения модели.
В настоящее время у меня есть только мои модели и представления. Похоже, мне может потребоваться реализовать какой-либо объект контроллера или модели представления для обработки таких вещей. Любые идеи были бы отличными