Pattern Suppositions

  1. Techniques have a tendency to be successful under some defined range of circumstances.
  2. Noteworthy successful techniques and noteworthy unsuccessful techniques (in a given context) should be identified and named because:

    • naming successful techniques increases their adoptability (e.g. the techniques are more easily disseminated, and thus propagate, and are easier to discuss and maintain)

    • naming unsuccessful techniques indirectly reduces their adoptability (e.g. the "black sheep" label invokes peer pressure against the technique)

  3. Documented, reusable object organizations (e.g. BridgePattern), not just idioms (e.g. good factoring habits) are both necessary for DesignPatternEvolution.

-- LukeSamaha


Techniques are named because it's easier to communicate about something that has a name. Does it have to affect the techniques in themselves?

Naming only increases the attention given to the technique. Could increased attention accelerate evolution of the pattern?

I don't understand. How would you see the evolution of an "established" pattern? For example, how would you see the evolution of the Singleton. Please note that I don't mean where it came from. I can see how patterns emerge from behaviour.

The text suggests programming practices in the community evolve, not that the pattern changes. -LukeSamaha

See PairProgramming for another evolution accelerator.


EditText of this page (last edited March 13, 2004) or FindPage with title or text search