Я хочу написать код GUI, который будет ортогональным.Допустим, у меня есть класс круга и класс квадрата, и они должны взаимодействовать.Прямо сейчас, чтобы окружение и квадрат говорили друг с другом - скажем, объект круга отправляет сообщение квадратному объекту, я бы использовал что-то вроде square_obj.listen_for_circle(circle_obj)
, где listen_for_circle
- это метод, который реализует аддистансер.
Это проблема для меня, так как теперь два объекта связаны - и удаление одного объекта из моего кода сломало бы его.Я хочу, чтобы circle_obj мог транслировать глобальное сообщение, скажем 'CIRCLE_EVENT'
.Кроме того, square_obj будет прослушивать глобальные широковещательные сообщения типа 'CIRCLE_EVENT'
, а после прослушивания события - выполняет какое-то действие (Ааа, теперь у объектов нет ссылок друг на друга в кодовой базе!)
Isэто возможно или даже разумно в MATLAB?(или, может быть, я просто схожу с ума).Как всегда, совет очень ценится.