Chapter 3. Patterns

This chapter looks at what a pattern is; what it means to be patterns happy; the importance of understanding that patterns can be implemented in many ways; considerations for refactoring to, towards, or away from patterns; whether or not patterns make code more complex; what it means to have “pattern knowledge”; and when it may make sense to do up-front design with patterns.

What Is a Pattern?

Christopher Alexander, an architect, professor, and social commentator, inspired the software patterns movement with two literary masterpieces, A Timeless Way of Building [Alexander, TWB] and A Pattern Language [Alexander, PL]. Beginning in the late 1980s, software practitioners with years of experience began studying Alexander’s ...

Get Refactoring to Patterns now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.