价值所在

模式通常为软件开发增加了价值,这对于并发性尤为适用。附加值可以归结为三点:良好的术语,改进的文档,学习的榜样。

良好的术语意味着,软件开发人员可以使用通用且明确的词汇表,这样误解或冗长的解释都是成为过去式。如果一个软件开发人员询问,如何实现在运行时对类似的算法簇进行交换时,答案可能很简单:使用策略模式。如果软件开发人员知道策略模式,就可以立即考虑如何使用策略模式;如果没有,他就需要查阅文献。

文档在两个方面可以改进。首先,关于软件系统的文档,可以进行图形化或文本化,因为在文档中读到“使用了观察者模式”,就知道系统有一种主题/观察者结构。这意味着观察员将登记或注销,如有必要则会向所有观察员发出通知。第二,对具体实现的了解,这样就可以直接跳到源代码并搜索关键字,如observer、subject或notify。

模式就是向榜样学习,从最好的人那里学习已有经验,不要重复他们的错误。了解它们为哪些典型的问题提供经过已验证的解决方案,并是如何控制复杂性的。每个模式都会提供相应的信息,什么时候应该使用它,使用它的会有什么后果,以及如何实现和已知用法。