Шаблоны дизайна хороши, если используются правильно.
Полезно помнить, что идея шаблонов проектирования возникла в архитектуре. Архитектура может сильно отличаться. Тем не менее, есть много основных идей, которые присутствуют в любом здании. Таким образом, думайте о шаблонах как о строительных блоках дизайна. Важно отметить, что не каждое здание включает в себя все возможные архитектурные решения.
Скажем, вы проектируете дом. Вместо того, чтобы входная дверь открывалась на улицу, вам нужно укрытое место перед входом в дом, то есть прихожая. Эта область будет соответствовать определенному образцу. А именно, у него будет два входа, несколько стен и, возможно, крыша. Обратите внимание, что в шаблоне не указаны двери, окна или количество стен. В большинстве реализаций будет две двери, четыре стены и, возможно, окна. Тем не менее, шаблон описывает закрытую область с двумя входами. Один ведет в прихожую снаружи дома, а другой ведет в остальную часть дома. Ключевым моментом здесь является то, что если вы хотите прихожую, вы должны заключить область и обеспечить два входа в эту область.
Типичные проблемы с шаблонами проектирования в программировании - это чрезмерное использование и вера в то, что они - серебряные пули, чтобы решить любую проблему. Они не. Это способы общаться и думать о полезных идеях программирования. Если биты синтаксиса конкретного языка - это кирпичики и миномет, шаблоны описывают полезные способы их размещения для удовлетворения определенных потребностей.