This pattern was previously described in GoF95.
In general, an object-oriented application consists of a set of interacting objects each offering limited, focused functionality. In response to user interaction, the application carries out some kind of processing. For this purpose, the application makes use of the services of different objects for the processing requirement. In terms of implementation, the application may depend on a designated object that invokes methods on these objects by passing the required data as arguments (Figure 30.1). This designated object can be referred to as an invoker as it invokes operations on different objects. The invoker may be treated as part of the client application. The set of ...