Паттерны проектирования часто возникают в результате рефакторинга, а не разрабатываются заранее — по мере роста кода и выявления его требований, рефакторинг в направлении паттернов улучшает проектирование. Это отражает принцип применения паттернов когда они действительно нужны, а не спекулятивно.
Паттерны возникают через рефакторинг
Rather than designing patterns in UPFRONT (often premature/speculative), patterns often
emerge as you REFACTOR existing code:
→ start SIMPLE → as needs become clear (real complexity, real duplication, real change
points), REFACTOR toward a pattern that addresses them
→ "refactor TO a pattern" when the code would genuinely benefit
→ patterns as a destination of refactoring, not a starting blueprint
