சரியான pattern-ஐ (அல்லது எதுவும் இல்லாமல்) ஒரு சிக்கலுக்கு தேர்ந்தெடுப்பது சிக்கலை ஆழமாக புரிந்துகொள்ளல், pattern-களையும் அவற்றின் trade-off-களையும் அறிதல், மற்றும் நன்மைகளுக்கு எதிராக சிக்கலைநை சமநிலைப்படுத்த판断்ஞானத்தைப் பயன்படுத்துதல் ஆகியவற்றை தேவைப்படுத்துகிறது. இதன் লக்ష்யம் சிக்கலை நன்றாக தீர்ப்பதே, pattern-களை அவற்றின் சொந்த நிமித்தத்திற்காக பயன்படுத்துவதல்ல.
சிக்கலுடன் தொடங்கவும், pattern-உடன் அல்ல
✓ UNDERSTAND THE PROBLEM first → what's the actual issue? (don't start by picking a pattern)
✓ Identify what you NEED → flexibility? decoupling? extensibility? simpler creation?
✓ Then ask: does a pattern address THIS problem well? (or is a simple solution better?)
→ problem-first, not pattern-first → avoid forcing patterns
