For a compound design, all the OOP concepts we have discussed for the different design patterns collected in a single compound design apply. So, to avoid repeating the same key concepts discussed in the chapters where the compounding elements were reviewed, we'd like to focus on a more general key OOP concept for the Symmetric Proxy design pattern—flexibility.
Because the Symmetric Proxy design focuses on interaction over the Internet, we need to look at two different kinds of flexibility. First, we need to look at communication flexibility. That is, can the model be used with different communication technologies over the Internet? Second, we must consider game flexibility. To what extent can different games be employed with the design?
The first question to address is whether or not any trans-Internet communication can work with the Symmetric Proxy pattern. Because of its ease of use and built-in features like remote shared objects, using an application such as Flash Media Server 2 has a built-in disadvantage as a communication testing and development platform for a general communication design pattern. The server-side script automatically informs all players of the current game state in the form of one or both players having moved. Once both players have moved, the referee determines who has won and resets the game for another round.
In the original model of the Symmetric Proxy and the Androgynous variation, ...