Pattern languages of program design 1
作者: James O. Coplien,Douglas C. Schmidt编;谢文亮,梁金昆译
出版社:清华大学出版社,2006
简介:PLoP(Pattern Languages of Program Design)创立的宗旨是创造新文件。这暗示着PLoP的创始人对现有的文化有些不满,事实的确如此。这些创始人(面向对象编程社区的几位知名人物)已经意识到:他们的才华已受到文件偏见的限制。这种偏见源于科学出版物的传统,一言以蔽之就是喜新厌旧,总是追逐最新最近的发明或发现,而忽视传统的东西,而不论这些所谓的发明或发现是否有用。PLoP的创始人对传统的兴趣也许源自他们对软件重用的研究,或者来自他们的观察:尽管采用了最新的技术,但是由于缺少常用的解决方案,项目最终还是失败了。最重要的是:所有的创始人一致认为他们应该集中精力从事解决方案的推广。PLoP大会就是在这种背景下召开的。
本书是“模式形式”系列书籍的第一部,这是我们心目中最佳的解决方案共享方式。我们要求作者提交“模式形式”方面的论文,但不要求实际地阐述形式的含义。Christopher Alexander创造了“模式语言”这一术语并且在他的著作The Timeless Way of Building中很好地阐述了该形式。很多作者对这项工作都很熟悉,而更多的人则是通过OOPSLA研讨会和Internet讨论组了解到它的。即便如此,我们还是感到各位作者希望畅言如何将Alexander的形式应用到计算机编程领域。有一点我们始终坚持:每篇论文描述一个解决方案,可以用来解决一个问题。
读者在阅读本书时会发现,各位作者的解决方案所覆盖的问题范围相当广。这也意味着并非每一章都能引起读者同等的兴趣。我们希望随着PLoP社区的发展和成熟,PLoP自身能随着兴趣方向而分化。未来的书籍不会要求它们有如此广泛的读者。在此我们希望读者能够细读每一章,即使您并不打算立即应用所读到的内容,也可以启发表达模式的新灵感,并且的确会提出一个角度来理解开发软件如此困难的原因。
虽然涉及的主题丰富多样,PLoP的作者和参与者之间却达成了一些令人惊叹的共识。例如,多数人都已发现:解决方案(模式的本质)可以轻松超越其表达形式的准确特性。模式最终必定停留在人的头脑中,所以各种书写风格(从标准模板的标签化分节到更具风格的运行段落)对模式成功的贡献都不如一些更基本的元素。这些元素包括:设立问题及其上下文,分析施加于解决方案的影响力,以及(最重要的)提供具体的解决方案。包含这些元素的模式都成功了。
PLoP'94的核心特色就是作者研讨会,作者听取对他们论文的小组讨论并就其中的亮点和不足展开争论,而不是把论文发给每位听众了事。这就给了作者一个机会,不仅知道如何交流,还能发现他们所研究的技术的其他替代方案。(几十年前在创作性写作社区发源而来的)作者研讨会是新作者学习前辈的经验技巧推敲他们见解的重要论坛。我们很感谢Richard Gabrief在1994年春天把我们领入作者研讨会。就我们所知,这是它第一次被用于技术社区,不过看起来效果甚佳。
这就是促生本书的理念和过程。我们对结果很满意,相信各位读者也会。因此我们要全速前进。每周我们都会发现新的证据:我们和我们的作者所促成的焦点转移对我们编写程序的方法具有深远的影响。他们也通过实例昭示了我们对软件工程未来的憧憬。
参与本书翻译和审校工作的有:谢文亮、马睿倩、梁金昆、张丽萍、王新彦、刘敏、李娟、刘颖、吴东升、郑刚、李楠、贺倩、李蓉、张颖、刘伟、王彦、王婷、李晓东、吴玲、胡静、张旭、王东、张雄、卢冰、高宏、李晓梅、汪刚、张健、刘洋、苏建忠、王欣轩、于涛、李敏等,在此表示感谢。