This chapter demonstrated how patterns provide a vocabulary to efficiently describe complex solutions without sacrificing detail. Effectively, the patterns form a new language with which architects and designers can communicate their thinking.
Because of the large number of patterns involved in building enterprise solutions, it can seem difficult to learn this new language. This guide structures the patterns into smaller, more closely related sets of patterns. This allows you to get started by using a smaller set of patterns, depending on your specific interest or the stage of the project.
This chapter introduced four mechanisms to help you navigate the patterns:
Relationships. Relationships between patterns help you to identify patterns that are closely associated to the pattern you are using (for example, Page Controller focuses on the controller aspect of Model-View-Controller).
Clusters. Clusters group patterns that belong to a common subject area (for example, Web Presentation).
Levels of abstraction. Levels of abstraction allow you to describe concepts in a manner that is consistent with the level of detail of your discussion (for example, an architectural conversation).
Viewpoints. Viewpoints help you select the vocabulary that is relevant to a team’s particular role (for example, the infrastructure team).
These mechanisms are not meant to constrain your thinking, but instead are intended to make looking at complex systems easier. With practice, you will naturally switch between these mechanisms as you switch between roles, subject areas, and levels of detail.