flickr photo by Philippe Put https://flickr.com/photos/34547181@N00/27844620322 shared under a Creative Commons (BY-ND) license
Software design patterns are general solution to common problems presented in software development. They are also commonly know as "goog practices" while programming. There are several types:
- Alogorithm strategy patterns
- Computational design patterns
- Execution patterns
- Implementation strategy patterns
- Structural desgin patterns
Classification:
- Creational patterns
- Structural patterns
- Behavioral patterns
- Concurrency patters
source:
https://en.wikipedia.org/wiki/Software_design_pattern
https://www.youtube.com/watch?v=vNHpsC5ng_E