Chapter 10. Associations
A poor relation—is the most irrelevant thing in nature.
—Charles Lamb, Poor Relations
It is probably safe to say that associations are the second most underutilized feature of OO development.1 The problem is that although OO practitioners are well aware of them, they tend not to pay much attention to them. As it happens associations are extremely important to defining the structure of dynamic collaborations. They allow us to express business rules and policies in static structure rather than behavior responsibilities. Most important of all, they are the primary mechanism through which the OO paradigm limits access to knowledge. These advantages won’t become entirely clear until we see how associations dovetail with ...