2. Idioms and patterns*:
This chapter introduces idioms and
design patterns
as means to capture recurrent structures and solutions
in object-oriented programming.
It distinguishes between idioms as solutions
tied to a particular language and patterns which are
the product of rational design.
This chapter contains numerous examples, in Java.