A general, reusable solution to a commonly occurring problem within a given context in life.
---
"that girl I just met -- I'm in love with her -- I'm gonna play it cool"
"nice dude, that's a design-pattern"
---
"bro I'm about to not kick sand in Ninja's face"
"good call man -- that's a design-pattern"
---
In programming, things work by names. Therefore, if you have to change something, add something, remove something, it normally takes a lot of work, as your have to re-implement the names.
Design Patterns is a successful attempt to eliminate the frustration by helping you create a separate interface (where you tell the program what things do) from your classes (how you implement actions).
While it is commonly used in programming, it is also used in architecture.
I used to think real programmers subclassed everything until I found out about design patterns.
2👍 2👎