Я создаю игру с GUI, используя шаблон MVC, и теперь я хочу иметь возможность добавлять онлайн-игроков (я собираюсь упростить это, поэтому я скажу вид, контроллер и у модели только один класс каждый). Я уже создал сервер, используя несколько потоков, как указано здесь https://docs.oracle.com/javase/tutorial/networking/sockets/clientServer.html, и теперь я хочу, чтобы сервер (потоки) был единственным, имеющим доступ к модели с использованием шаблона Singleton.
Мои вопросы:
- Где мне создать Client Socket?
- Какой класс я должен зарегистрировать в качестве наблюдателя модели? GUI больше не может быть наблюдателем, поскольку он выполняется в другом месте, чем модель.
- Как этот наблюдатель собирается общаться с GUI? Нужно ли создавать новый контроллер? (Полагаю, мне нужно, но я не уверен)
- Серверный поток должен прослушивать поток ввода сокета и, в зависимости от того, что он получает, вызывать другой метод класса Game. Я прав?
Если вам понадобятся какие-то кусочки кода, я выложу их здесь Спасибо!