- Abstract Factory
- Factory Method
- Object Pool
- Private Class Data
- Chain of Responsibility
- Null Object
- Template Method
- Monad Pattern / Promises
I know there are a lot of people out there who aren't too keen on design patterns but that's not to say that they shouldn't be used or studied. There's a lot of code out there that starts with
.on() and all of them are implementations of the Observer pattern. Finding this reusable approach is the main point of patterns and along with it comes a shared vocabulary that can be passed on to other developers. Rather than saying "Let's defer the methods of our object that are subject to change to well encapsulated algorithms." We can just say "A Strategy pattern might be nice here."
Again, this is all about learning and experimenting. In my opinion a good understanding of design patterns is a threshold that needs to be crossed at some point in your career. I’m committed to doing this twice a week for the next several weeks so hopefully by the end of it we’ll have a useful resource that others can benefit from. Stay tuned!
You should follow me on Twitter here.