简明扼要设计模式
一、简介
设计模式是对面向对象设计中反复出现的问题的解决方案。这个术语是在1990年代由Erich Gamma等人从建筑设计领域引入到计算机科学中来的。
这个术语的含义还存有争议。算法不是设计模式,因为算法致力于解决问题而非设计问题。设计模式通常描述了一组相互紧密作用的类与对象。设计模式提供一种讨论软件设计的公共语言,使得熟练设计者的设计经验可以被初学者和其他设计者掌握。设计模式还为软件重构提供了目标
软件编程过程中根据场景选择合适的设计模式可以产出更好的产品,而不当的设计则会影响最终产品的质量。设计模式提高了我们软件复用的水平,从而提高了生产效率。
上面都是设计模式的官方解读,包括关于设计模式的相关书籍也很多,都很清晰描述了设计模式的核心思想以及使用样例。其实在我看来设计模式的学习纳入到性能优化大纲中章节,除了能使我们编写的程序更加高效简洁外,还有一个重要原因:培养“编码意识” ,把模式融化入思想,使得以后编程中,自然而然的使用模式,信手拈来,完全是潜意识的。这个章节的学习仅仅让我们快速入门,后期编码过程中要深入理解“模式”。
每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,我们就能一次又一次地使用该方案而不必做重复劳动