Four Solutions

To illustrate the options available, this section explores several ways to tackle this problem, presented in order of increasing complexity.

Each solution has different strengths and weaknesses. In the real world, no two applications are identical; any one of these approaches may be more appropriate for one situation than for another.