Answers:
我认为“论文”实际上是“ 动态语言中的设计模式”演示文稿,该声明在Wikipedia中也被引用:
设计模式可能只是给定编程语言(例如Java或C ++)缺少某些功能的标志。彼得·诺维格(Peter Norvig)证明,在Lisp或Dylan(通过直接语言支持)中,“设计模式”书(主要侧重于C ++)的23个模式中有16种得到了简化或消除。
Paul Graham以类似的方式将设计模式描述为“ 书呆子的复仇 ”中的“工作中的人类编译器” :
这种做法不仅普遍,而且制度化。例如,在OO世界中,您会听到很多有关“模式”的信息。我想知道这些模式有时不是工作人员(c)案例的证据。当我在程序中看到模式时,我认为这是麻烦的迹象。程序的形状应仅反映需要解决的问题。至少对我来说,代码中的任何其他规律性都标志着我正在使用不够强大的抽象-通常是我手工生成需要编写的某些宏的扩展。
这两个引号都是Ward的Wiki上的Are Design Patterns Missing Language Features讨论的基础。