- Techniques have a tendency to be successful under some defined range of circumstances.
- 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)
- 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.