Why should I learn patterns?
The truth is that you might manage to work as a programmer for many years without knowing about a single pattern. A lot of people do just that. Even in that case, though, you might be implementing some patterns without even knowing it. So why would you spend time learning them? Design patterns are a toolkit of tried and tested solutions to common problems in software design. Even if you never encounter these problems, knowing patterns is still useful because it teaches you how to solve all sorts of problems using principles of object-oriented design. Design patterns define a common language that you and your teammates can use to communicate more efficiently. You can say, “Oh, just use a Singleton for that,” and everyone will understand the idea behind your suggestion. No need to explain what a singleton is if you know the pattern and its name.
The truth is that you might manage to work as a programmer for many years without knowing about a single pattern. A lot of people do just that. Even in that case, though, you might be implementing some patterns without even knowing it. So why would you spend time learning them? Design patterns are a toolkit of tried and tested solutions to common problems in software design. Even if you never encounter these problems, knowing patterns is still useful because it teaches you how to solve all sorts of problems using principles of object-oriented design. Design patterns define a common…
saved by
related reading
- What's a design pattern?refactoring.guru
- Good code is like a love letter to the next developer who will maintain it.addyo.substack.com
- Classification of patternsrefactoring.guru
- Design Patternsrefactoring.guru
- Design Patternsgrantslatton.com
- What to learndanluu.com
- In defense of blub studies | benkuhn.netbenkuhn.net
- Introductionthird-bit.com
- Things unlearnedscattered-thoughts.net
- Essays on programming I think about a lot | benkuhn.netbenkuhn.net
- Teach Yourself Programming in Ten Yearsnorvig.com
- Knowing and Doing: October 2018 Archivescs.uni.edu