一种设计模式是对一种相同问题的解决方法,设计模式经常和面向对象的编程相关,但是不是唯一的,一些非计算学科的概念也和设计模式息息相关.
设计模式并不意味该问题只有一种解决方法,也不意味该模式是该问题的最佳解决方法,而仅仅是对该特定问题的提供一种最佳的经过实践的方法.该方法是经过无数实践经验得来的.
模式和编程环境相关,不通的编程环境会影响到模式的选择,不是所有的编程环境都支持所有的设计模式,在某种编程环境或语言上很简单的实现某种模式,在另外一种编程环境或预言上也许很难.
设计模式根据不通的问题划分为不通的组,开发的时候根据不通的问题采用不同的组模式,还要根据特定的情况采用该组中特定的模式.