Description
Who invented patterns? That’s a good question, but it doesn't have a very accurate answer.
When a solution gets repeated over and over in various projects, someone eventually puts a name to it and describes the solution in detail. That’s basically how a pattern gets discovered.
The concept of patterns was first described by Christopher Alexander in his book "A Pattern Language: Towns, Buildings, Construction".
- The book is used to design towns and buildings in an urban environment.
- The book has used patterns to describe how high windows should be, how many levels a building should have, how large green areas in a neighborhood are supposed to be, and so on.
The idea was picked up by four authors (namely Erich Gamma, John Vlissides, Ralph Johnson, and Richard Helm), who published the book "Design Patterns: Elements of Reusable Object-Oriented Software" in 1994.
- They applied the concept of design patterns to programming with 23 patterns.
- These patterns solve various problems of object-oriented design.
- Due to the book's lengthy name, people started to call it “the book by the gang of four” which was soon shortened to simply “the GoF book”.
- Today, there are dozens of other object-oriented patterns have been discovered.
- The “pattern approach” became very popular in other programming fields, so lots of other patterns now exist outside of object-oriented design as well.
Overall
We now know how the design patterns evolved over time.