Any client server application needs to pass requests and await responses between the client and server. Use of the Strategy Pattern, can do a good job here. So, I am thinking, keep the code neat, encaptulate the request code, request data and response processing in just one class. Abstract the server from adding, modifying new requests from client. Obvious benefit, the server need not be modified for new requests added by the client, and multiple developers working on the client code.
Anyone want to take up the challenge of designing such a architecture ?