Java (laboratorium)

zadanie nr 12

W pakiecie roznosci.gry napisz program umożliwiający granie w kółko i krzyżyk poprzez sieć. Program ma się składać z dwóch części: serwera i klienta (obie zaprogramowane jako aplikacje okienkowe). Serwer i klienty powinny się komunikować poprzez gniazda (klasy Socket i ServerSocket) po protokole TCP.

Program klienta powinien po uruchomieniu nawiązać połączenie z serwerem i czekać, aż server przydzieli mu partnera do gry. Serwer natomiast łączy graczy w pary i pośredniczy w rozgrywce. Na każdego gracza lub każdą parę graczy jest przydzialany po stronie serwera ososbny wątek obsługujący grę. Oczekującemu graczowi jest przydzielany partner, gdy do gry zgłosi się nowy zawodnik lub jakiś pojedynek się zakończy (zwycięzca gra z oczekującym, a przegrany czeka na następną kolejkę).

Program należy opatrzeć stosownymi komentarzami dokumentacyjnymi i na końcu wygenerować dokumentację poleceniem javadoc. Opracuj i dokładnie opisz protokół wymiany informacji pomiędzy serwerem a klientem.

Paweł Rzechonek

Wrocław, 19 stycznia 2005.