Thursday, May 25, 2006

Design Patterns: Part 3

Part 3 on desing patterns from LukeW...

“You're pirates. Hang the code, and hang the rules. They're more like guidelines anyway.” – Pirates of the Caribbean

Terminology can be tricky stuff. At eBay, we had a long history of talking about design guidelines, design principles, reusable design components, frameworks, templates – and probably about a half dozen other terms, all related, all with a slightly different emphasis or connotation. While this semantic messiness probably reflects the reality of the field pretty well, in practice it actually caused a great deal of confusion with harried designers, e.g.: “Is it a guideline we can make exceptions to, or is it a principle?”

Finally, we decided to cut through the confusion and use a single, general term: design patterns. We chose it because it seemed to convey what we wanted to build: solutions that were specific enough to be practical, but general enough to be useful in multiple situations. It seems to have worked pretty well.

So what is a design pattern? We’ve used one definition: “A design pattern is a repeatable design solution, that’s been tested, reviewed, and verified.” I think the essential part of that definition is the “repeatable design solution” part – we’ll talk about some of the challenges with testing, reviewing, and verifying later in the conversation. But repeatable solutions give a pragmatic answer to the question: if it’s a solution that’s been useful in more than a few situations, it’s worth writing up as a pattern. If it’s been documented well enough that another designer can use it for a different problem, it is a design pattern."   continued ...   (Via LukeW)


Post a Comment

<< Home

<< Home