Клиент
"Игры в доминирование"
Клиентская
часть приложения "Игры в доминирование" значительно проще серверной
части. По описанию работы клиента "Игры в доминирование" можно составить
следующий список его интерфейсных форм и функций, сгруппированных в модули:
Основная процедура
клиентской части "Игры в доминирование" — это процедура обработки
события
Таймер
(Timer) формы "Клиент", которая необходима для
реализации обратной связи сервера с клиентом. Поскольку данный пример не предназначен
для иллюстрации взаимодействия приложений с помощью OLE Automation, обратная
связь сервера с клиентом осуществляется со стороны клиента и реализована в виде
вызываемой периодически процедуры проверки наличия адресованных игроку сообщений.
Клиент может находиться в одном из состояний, определяющих действия, которые
будут выполнены клиентом в ответ на очередное событие таймера. Например, в состоянии
"игра начата" клиентом производится прием сообщений от сервера.
Сообщения
от сервера делятся на две категории: информационные и управляющие. Управляющие
сообщения, в отличие от информационных, не отображаются на экране, а приводят
к изменению состояния клиента или выполнению клиентом определенных действий.
Рис. П2.6.
Диаграмма вариантов использования для клиента "Игры в доминирование"
Взаимодействие
клиента с сервером осуществляется методом посылки" серверу заявки. Заявкой
игрока может быть ход (координаты клетки) или заявка на выход из игры.
Замечание
Обмен данными между сервером и клиентом игры осуществляется через таблицы сервера приложения. Эти таблицы совместно используются клиентскими приложениями и сервером игры (программным способом — с помощью интерфейса DАО). Об этом рассказано в разд. "Программирование с использованием интерфейса DАО" гл. 16.
По данному описанию клиента создана диаграмма вариантов использования, представленная на рис. П2.6.