21. Modeling Solutions with Patterns
THIS CHAPTER EXPLAINS how various forms of patterns allow you to reuse ideas in different contexts so that you don’t need to implement every solution from scratch. We start by introducing you to a common software engineering pattern called the Façade and show you how you might use it to gradually introduce test-driven development (TDD) into a project that has a lot of existing code without supporting programmer tests. We then look at the way reusable components and Domain-Specific Languages (DSLs) help people describe and assemble the sorts of things they want to build without having to write masses of low-level code.
What Is a Pattern?
Martin Fowler defines a pattern as “an idea that has been useful in ...