????一刀切的规则往往是不公平的,而人们对模式却更加一刀切。模式的领域、内容、范围、形式、质量……这个领域大得吓人,只需要随手翻翻PLoP 的书[CS95, MRB98, VCK96]就能看出。不同的人写出不同的模式,而模式的变化甚至比作者还要多。象Alistair Cockburn、Jim Coplien、Neil Harrison 和Ralph Johnson 这样的作者已经超越了最初大量记录不同领域、不同形式模式的阶段。只看几个例子就对模式做一个笼统的结论,这样的结论必定是错误的。
????和大多数的误解一样,这个误解也是有原因的。看看人们用来描述模式的格式,有两种基本的风格:描述高层结构的GoF风格(用于《设计模式》中);接近文学的Christopher Alexander 风格??叙述性的,尽量少的结构图。由于已经用模式描述了面向对象设计之外的东西,所以我现在熟悉到GoF风格造成的偏差。对于我研究过的某些领域的专家经验,这种风格根本无法描述。为什么结构图看上去总是让人联想到C++?对于音乐作曲的模式,“实现”应该是什么?“协作”部分真的有意义吗?
????这种观点曾经有一定的说服力,但是现在已经没有了。在Software-PRactice and EXPerience[Kotula96]这样的杂志上、在OOPSLA[HJE95, Schmid95]和ICSE[BCC+96]这样的会议上,人们不断的报告自己从模式得到的利益。Doug Schmidt已经清楚的说明了在传授计算机科学时使用模式的收益[PD96]。尽管绝大多数的证据都只是定性的,但是据我所知,至少有一个组织得到了一些定量的结论[Prechelt97,PUS97]。