设计模式是为特定场景下的问题而制定的解决方案。特定场景和特定问题很重要。人类直面问题的基本解决方案是理解这个问题,在自己的脑海中想象自己有没有遇到过同样的事情,有就看看能不能参考,没有就实地想该要如何处理这个问题,处理完成后记录这个结果。
而人脑的好用之处在于随机应变,会眼花出很多技巧。但是编程中遇到相同问题,特定场景时人脑不一定好用。但是会下意识的按照过往经验去处理。
总结起来就成为了设计模式。因而设计模式中最重要的就是抽象能力。
设计模式是一种驾驭抽象概念的技术,而描述模式的标准格式里就包括了抽象描述,代码示例和应用场景。如果一个程序员根据这些信息还不能理解一个设计模式的话,说明他首先抽象思维尚不足以驾驭设计模式,其次在理解代码和接触应用场景方面经验不足。简单来说,还未能达到“设计新手”的入门水平。在这种状态下勉强去使用设计模式,出问题是在所难免的。