Критика паттернов.
Кажется, паттерны проектирования не критиковал только ленивый. Давайте рассмотрим самые типичные доводы против использования паттернов.
Костыли для слабого языка программирования
Обычно потребность в паттернах возникает, когда люди выбирают язык программирования или технологию, которой не хватает необходимого уровня абстракции. В этом случае паттерны становятся костылём, дающим языку столь нужные сверхспособности.
Например, паттерн Стратегия в большинстве современных языков программирования можно реализовать с помощью простой анонимной (лямбда) функции.
Неэффективные решения
Паттерны пытаются систематизировать подходы, которые и так уже широко используются. Многие воспринимают эту унификацию как догму и реализуют паттерны «дословно», не адаптируя их к контексту своего проекта.
Неоправданное применение
Если всё, что у вас есть, — это молоток, то всё вокруг кажется гвоздём.
Это проблема, преследующая многих новичков, которые только-только познакомились с паттернами. Узнав о паттернах, они пытаются применять их повсюду, даже там, где прекрасно подошёл бы более простой код.