Design patterns มัก เกิดขึ้นผ่านการ refactoring แทนที่จะถูกออกแบบไว้ล่วงหน้า เมื่อโค้ดเติบโตและความต้องการชัดเจนขึ้น การ refactor ไปสู่ patterns ช่วยปรับปรุงการออกแบบ สิ่งนี้สะท้อนหลักการของการนำ patterns ไปใช้เมื่อจำเป็นจริง ไม่ใช่แบบคาดเดา
patterns เกิดขึ้นผ่านการ refactoring
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
