What Are Patterns Really?

Now we get to the deeper theory behind why things went as they did. The basis of many problems with software design patterns is rooted in how so many aren’t patterns at all. Before we attempt to analyse this impact, we need to be well-versed in how things could have been. We need a deeper understanding of what patterns are, what they are not, and how they surpass idioms and techniques.

This chapter will start with the idea of patterns as wisdom. Then, we move on to the form of a pattern—how it reflects its final state and the process by which it accomplishes the task. Patterns are actions, and their actions are always about resolving some forces in a context, so we continue with a section on what this means.

We can then talk about the importance of relationships. Patterns were born from the idea that relationships are the critical aspect of complex design. Without thinking about patterns as part of a larger intertwined configuration, much of their value is lost. We then move on to how these connections explain why they are eternal, not idiomatic or momentary. We conclude by analysing the claim they emerge without being designed with intellect, that is, they are most often found, not invented.