Я работаю над сетевой игрой для 4 игроков в WPF и изучаю WCF в процессе. До сих пор, чтобы справиться с сетевым взаимодействием, я следовал совету игры YeahTrivia для игры Coding4Fun : я использую dualHttpBinding
и использую интерфейс CallbackContract
для отправки сообщений клиентам , Это работает довольно хорошо.
Однако мой сервис становится очень большим. У него есть методы / обратные вызовы для управления самой игрой, а также система чата, процесс входа в систему / регистрации, создание матчей, информация о ростере / игроке и т. Д. Как сервер, так и клиент становятся сложными в обслуживании, потому что все связано с Единый интерфейс. Например, на клиенте я должен перенаправить обратные вызовы либо на страницу игры, на страницу лобби и т. Д., И я считаю это очень утомительным. Я предпочел бы иметь возможность обрабатывать обратные вызовы игры на странице игры, обратные вызовы чата в окне чата и т. Д.
Так, каков лучший способ справиться с этим? Я думал о многих вещах, но не уверен, что лучше: разбить службу на несколько, иметь несколько «конечных точек» на моем сервисе, или есть другие приемы, чтобы реализовать сервис частично там, где это необходимо?
Спасибо