7 Design Patterns Every Developer Should Know (still writing)
There are problems in software development that will appear over and over again regardless of the language or platform you use. For this reason, design patterns were created for you to use, and to know when to use each one of them.
The Gang of Four (GoF) wrote one of the most important books in software development, Design Patterns, containing 24 commonly used designs.
All these 24 design patterns fit into 3 types:
Creational Patterns
Instead of creating objects directly, these patterns are more flexible in how these objects are created.
3 main ones:
- Singleton
- Builder
- Factory
Structural Patterns
Deals with how objects relate to each other. Think of them as a blueprint for creating larger structures from individual pieces (like LEGO)
2 main ones:
- Facade
- Adapter
Behavioral Patterns
Communication between objects - how they interact and distribute responsibility
- Strategy
- Observer
Refactoring Guru
The best place to learn about design patterns