За дизайн шаблоните в 24 думи
Какво е шаблон
Шаблон(pattern) е решение на проблем, което може да се използва многократно.
Защо са важни?
- те са доказани вярни решения
- могат да бъдат използвани многократно
Анти-шаблони
Ако считаме шаблоните за добри практики, то анти-шаблоните са точно обратното.
Най-често анти-шаблоните описват лошо решение на проблем, което рефлектира върху крайният резултат.
Примери за анти-шаблони са:
- напълване на глобалният scope с променливи
- подаване на string-ове, вместо функции, на
setTimeout()
иsetInterval()
, като по този начин се използваeval()
- модификация на
Object
prototype-a
Категории шаблони
Шаблоните се делят на три вида:
Създаващи шаблони
Тези шаблони отговарят за създаването на нови обекти.
Примери: Constructor, Factory, Abstract, Prototype, Singleton и Builder
Структурни шаблони
Отговарят за композицията и връзката между отделните обекти.
Примери: Decorator, Facade, Flyweight, Adapter and Proxy
Поведенчески шаблони
Фокусирани са върху подобряването на комуникацията между коренно различните обекти в системата.
Примери: Iterator, Mediator, Observer and Visitor