Los patrones de diseño a menudo emergen a través de la refactorización en lugar de ser diseñados desde el principio — conforme el código crece y sus necesidades se hacen claras, la refactorización hacia patrones mejora el diseño. Esto refleja el principio de aplicar patrones cuando realmente se necesitan, no de forma especulativa.
Patrones emergen a través de la refactorización
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
