#java #model-view-controller #swing #user-interface #implementation
#java #model-view-controller #swing #пользовательский интерфейс #реализация
Вопрос:
Я хотел создать графический интерфейс для совместной работы в реальном времени, насколько мне известно, я думал, что корни java swing MVC могут сыграть определенную роль в этом и могут обеспечить основу. Я прав? я хотел получить отзывы экспертов.
Какая сетевая технология / библиотека подойдет для этой цели и может обеспечить поддержку высокого уровня?
пример использования: Если один клиент нажимает кнопку или перемещает ползунок, кнопка каждого клиента или ползунок перемещаются и т.д. То Же самое для других элементов swing?
Пожалуйста, поделитесь своими идеями, если вы считаете, что что-то достижимо и может сработать в качестве небольшого примера или подтверждения концепции.
Jibbylala
Ответ №1:
Скорее всего, вы не найдете какого-либо готового решения, которое делало бы именно то, что вы хотите, но вы должны быть в состоянии использовать существующие технологии для этого. Если у вас есть центральный сервер, вы могли бы использовать его для координации клиентов. Когда один клиент что-то делает, он может отправлять сообщение на сервер, которое затем будет транслироваться другим клиентам (клиент может зарегистрироваться на сервере для получения этих уведомлений). Если у вас нет / нужен центральный сервер, вы могли бы использовать широковещательную передачу UDP, и клиенты могли бы транслировать свои действия, а другие клиенты могли бы прослушивать и синхронизировать себя.
Другой проблемой будет разработка протокола обмена сообщениями, чтобы указать, что изменилось. Предполагаете ли вы, что нужно транслировать каждое действие пользовательского интерфейса (т. Е. Каждое нажатие кнопки, каждое движение компонента и т.д.), Или это будет просто их подмножество. Если это все из них, вы можете захотеть придумать общее решение, например, установить свойство X для компонента Y и т.д.
Надеюсь, это поможет.