. Benefits: • It reduces coupling • It adds flexibility when assigning responsibilities to objects • It allows a set of classes to act as one; events produced in one class can be sent to other handler classes within the composition..
Applicable Scenarios: • More than one object can handle a request and the handler is unknown • A request is to be issued to one of several objects and the receiver is not specified explicitly • The set of objects able to handle the request is to.. Be specified dynamically.