Sunday, December 04, 2005 

Patterns as a Language

In mid-90s, a few people pioneered the concept of "design pattern" applied to software design. For most programmers and designers, the pattern bible has been, and largely still is, "Design Patterns" from the Gang of Four. Later, a number of authors contributed to the development of the field, while others abused of the concept by publishing innovative solutions in a pattern form. A few programmers never got the concept. They would look at patterns and say "I've done stuff like that for years". Which is exactly why they are patterns.
Patterns are not meant to provide us with never-thought-before gems, but with pearls of wisdom. Even more important, patterns are about sharing that wisdom through our language: in fact, patterns makes us smarter by extending our vocabulary.
You'll never realize the full potential of patterns if you design and code by yourself. But if you spend a significant amount of time talking about design, like in joint design sessions, patterns deeply influence the way you talk, think, communicate.
When everyone involved is familiar with patterns, you can just say "we can use an abstract factory here, and create a chain of responsibility there", and by doing so, you'll communicate the problem as you perceive it, the surrounding forces, and a candidate solution. That's the true power of patterns. A pattern-savvy team is usually more productive, because people engage in higher-level conversations.
John Vlissides, one of the Four, recently left us for greener pastures. He did a great job, moving our collective understanding of software design a few, significant steps further. Thank you, John.
Comments:
Grazie Carlo per aver ricordato John. La triste occasione mi ha spinto ad approfondire un pò il personaggio e forse questa è la volta buona per togliere il cellophane dal suo "Pattern Hatching".
 
Post a Comment

<< Home