Я разрабатываю клиент-серверную архитектуру игры. Класс «Клиент» связывается с сервером и должен взаимодействовать с другими классами в зависимости от типа информации, которую он получает, например: Если класс клиента получаетДизайн кода: шаблон наблюдателя?
- картографических данных, то она должна взаимодействовать с классом который хранит карты
- данные о других участниках (имени, IP, ...), то он должен взаимодействовать с GUI (для отображения данных)
конечно, класс клиента может просто магазин ссылки (указатель) на все классы, с которыми он должен общаться. Я ищу способ решить эту проблему более красиво. Не могли бы вы использовать шаблон Observer и только уведомлять наблюдателей, когда клиент получает сообщение?
Ваш клиент звучит как наблюдатель (в представлении), так как он получает информацию. Ваш вопрос непонятен. Что вы подразумеваете под «более решительным решением этой проблемы»? Дизайн шаблонов не о том, чтобы сделать код более красивым (хотя часто это результат); они решают проблему. В чем проблема, которую вы хотите решить? – Fuhrmanator