知识卡片

软件模式要语言

普通读书笔记卡 · 1818.d

内容

单个软件模式只能解决局部问题,模式语言才能说明多个模式如何组合、冲突与演化。发散:团队沉淀最佳实践时,应记录模式之间的连接条件,否则知识库会变成孤立技巧列表。

参考来源

- 位置:《架构启示录》第2章《Christopher Alexander:模式、秩序、软件》2.8节“软件中的模式”,Gang of Four对建筑模式格式的借用(源文件:_chapter-text/chapter04.txt,对应OEBPS/Text/chapter17.xhtml) - 结论依据:GoF承认软件设计模式虽借用了Alexander模式的表述格式,却未能像Alexander的模式那样组织成一整套语言体系,说明单个模式与模式语言之间存在系统性差距。 - 原始内容:这种位于庞大的系统架构之下的“微架构”或“微建筑”,虽然也采用模式这一格式来表述,但并没有像Alexander的模式那样形成一整套语言,这一方面是因为面向对象的设计在当时只是个刚刚起步的领域,另一方面则“有可能仅仅是因为软件设计工作所遇到的问题与建筑学不同,因此无法直接拿模式语言来解决”。