设计模式代表经验丰富的面向对象软件开发人员使用的最佳实践。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是由众多软件开发人员在相当长的一段时间内通过反复试验获得的。
设计模式与语言无关。设计模式可以分为三类:创新模式,结构模式和行为模式。
创建模式-这些设计模式提供了一种在隐藏创建逻辑的同时创建对象的方法,而不是使用新的运算器直接实例化对象。这使程序在决定需要为给定用例创建哪些对象时具有更大的灵活性。模式示例:工厂,构建器,单例,等等。
结构模式-这些设计模式涉及类和对象组成。继承的概念用于组成接口并定义组成对象以获得新功能的方式。模式示例:适配器,装饰器,外墙等
行为模式-这些设计模式专门涉及对象之间的通信。模式示例:观察者,迭代器,策略等。