![]() |
Выбор шаблона проектирования
Друзья, помогите пожалуйста с проектированием архитектуры проекта.
Есть приложение, по сути пользовательский интерфейс, представляющий данные с сервера, позволяющий пользователю редактировать их и возвращающий обратно. Более конкретно - набор различных визуальных элементов (кружочек с возможностью регулировки радиуса, панель из нескольких кнопок, специальный ползунок) значительно отличающихся по функциональности между собой и обслуживаемых конкретными серверными данными (разными). При этом все эти объекты по логике связаны между собой (например: при изменении радиуса кружочка панель из кнопок должна менять цвет, при нажатии кнопки ползунок должен исчезать и т.п.), а также завязаны с некой общей логикой приходящей от сервера в виде данных (этот объект включить, этот выключить и т.п.). Сами объекты реализованы по MVC и отлично работают. Вопрос - как грамотно организовать взаимодействие всего этого многообразия? Может быть подскажите в область какого паттерна смотреть? Еще раз повторю - сами по себе все объекты "внутри" реализованы, выполняют совершенно различную функциональность и должны взаимодействовать друг с другом и управляться неким центром, связанным с данными от сервера. Класс работы с сервером есть. |
ну во-первых было бы логично все объекты реализовать от одного и того же интерфейса, а там уже выделив общие элементы управляться.
+ Абстрактная фабрика |
а есть ли возможность вносить изменения в реализацию компонентов?
если есть, могу поделиться личным опытом: я недавно писал интерактивные лабы на флэше для института, там тоже были взаимодействующие элементы интерфейса. Урок который я вынес заключался в следующем: если есть более-менее запутаная система компонетнов, наилучший способ описания их взаимодействия - очереди сообщений, я не знаю как называется соответствующий шаблон, но он полюбому существует. Суть заключается в том, что каждый элемент взаимодействует с остальными посредством передачи сообщений, скажем через AsBroadcaster, при этом элементы реагируют на сообщения следующим образом - каждое, вновь постпившее сообщение, помещяется в стек - очередь, элемент начинает обрабатывать сообщения из очереди последовательно, при этом он может рассылать сообщения другим элементам, мол что я такой-то такой-то только что обработал такое-то сообщение. Эти сообщения помещаются в очереди других элементов, которые также последовательно на них реагируют. Ну вообщем к чему я это все: я понял что если в системе есть элементы которые могут взаимодействовать хотябы с 3-5 другими элементами, возможно стоит реализовать схему с очредями, это сильно распутывает логику взаимодействия этих компонентов. |
|
| Часовой пояс GMT +4, время: 09:23. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.