A pattern is a concept that relates to software architecture. By architecture, we mean a high-level structure of programming code that includes elements and relationships. It's important to make the right decision when it comes to a pattern that will be used to solve everyday problems. This is because choosing and implementing a pattern is a one-time procedure that is expensive to change.
Before we begin, let's review the topics we will be looking at in this chapter:
- What design patterns are and how they help
- Types of design patterns
- Creational patterns
- Structural patterns
- Behavioral patterns