Slide 25 of 61
Patterns are Platonic, not Arisotelian. Using them for classifications is harder than some people think. They are characterizations, attractors in the design space, and not rigid categories. Some have several species/subspecies, such as Proxy. Others overlap, or have very fuzzy boundaries. Experts often disagree as to how to classify the same code.
Looking at patterns in the wild helps us to see why clean classification is so hard in practice.