Why should I learn patterns?
The most important reason is that patterns simplify the design and support of programs.
Tried and tested solutions.
You spend less time by applying ready solutions instead of re-inventing the bicycle.
You create fewer bugs, since you use typical unified solutions where all hidden bugs have already been discovered.
Universal programmers’ vocabulary.
You simply pronounce the name of a pattern instead of spending an hour explaining to other programmers the benefits of your new design and listing the required classes.