Notes from Design Patterns Overview Pluralsight Course
Date Published: July 01, 2020

I found Steve Smith's Design Patterns Overview course on Pluralsight very useful and informative.
I recently completed the Pluralsight course Design Patterns Overview by Steve Smith, which was very informative as a bird's eye view of design patterns as a general topic.
Why learn design patterns?
- So you don't reinvent the wheel
- They allow for increased clarity of communication
- They often lead to better software
- Advance your career
How to learn design patterns?
- be familiar with a wide array of patterns
- have a shallow understanding of several other patterns
- have a deep knowledge/mastery of several patterns
What makes up a design pattern?
- name/classification
- intent
- aka's
- motivation/problem to be solved
- applicability/context
- structure
- participants (classes, objects, etc.)
- collaboration between participants
- consequences/design tradeoffs
- implementation
- sample code
- known uses
- related patterns
Bolded points above indicate bare minimum required for broad knowledge of a particular pattern.
Design pattern structure
When to apply design patterns?
A few good design patterns in C#
Summary
- Design patterns = general solutions to existing problems
- Avoid reinventing the wheel
- Higher-level communication with your team
- T-shaped knowledge of patterns
- Practice!
- Use refactoring to apply patterns
- Look for ways to combine patterns
Thanks for reading! I hope you find this and other articles here at ilyanaDev helpful! Be sure to follow me on Twitter @ilyanaDev.