Название: Объекты и объект Отправлено: deaks от Февраль 06, 2011, 00:41 Добрый вечер)
ребят, посоветуйте, как лучше реализовать такую ситуацию. В системе моделирования присутствуют объекты. На каждом шаге модельного времени может создаваться 0..N объектов и при этом он должен взаимодействовать с остальными. То есть получается есть классы Objects и Object. Класс Objects включается в себя массив из Object. А в классе Object должен храниться указатель на Objects? Как-то странно получается. Или меня клинит :) Название: Re: Объекты и объект Отправлено: Akon от Февраль 06, 2011, 10:12 Двунаправленная связь, ничего странного.
Objects хранит Objectы в контейнере, например, QList, и предоставляет const ссылку на контейнер в интерфейсе, чтобы непосредственно в контейнер ничего не добавлялось и не удалялось. Добавление и удаление Object-ов производится через интерфейс Objects для реализации требуемых побочных эффектов. Objects вместо предоставления контейнера (предоставление контейнера - это выриант с наименьшими затратами на написание, повсеместно используется в самой Qt) может предоставить итераторы, в результате вызывающий клиентский код будет чуть лаконичнее. Название: Re: Объекты и объект Отправлено: deaks от Февраль 06, 2011, 11:46 Вот именно так у меня сейчас и реализовано)
волнует другое - удовлетворяет ли это парадигмам ООП? Название: Re: Объекты и объект Отправлено: Fat-Zer от Февраль 06, 2011, 12:33 Вот именно так у меня сейчас и реализовано) Конечно удовлетворяет, если правильно реализовано... Если что смотри паттерн компоновщик. (если кратко, то objects тоже наследник object'а)волнует другое - удовлетворяет ли это парадигмам ООП? Название: Re: Объекты и объект Отправлено: deaks от Февраль 06, 2011, 14:36 ну уж не знаю, я придерживаюсь только самого главного "паттерна" - mvc )))
но компоновщик интересен! спасибо Название: Re: Объекты и объект Отправлено: _govorilka от Февраль 06, 2011, 15:32 Akon
+1 Реализация подобных штук: Код: class Object Подобное решение, мне кажется, очевидно. Тут можно и про патерны ничего не знать... В Qt много мест, где такое используется, например сам QObject. Название: Re: Объекты и объект Отправлено: deaks от Февраль 06, 2011, 16:31 да я же не говорю, что не знал))) так и реализовал)
просто терзали сомнения Название: Re: Объекты и объект Отправлено: Igors от Февраль 06, 2011, 17:08 а вообще-то это один из вариантов "дерева" :)
|