设计模式
设计模式由Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides四人组(Gang of Four,Gof)在20世纪90年代从建筑设计领域引入到软件设计领域,他们写出了该领域的开创性著作《设计模式:可复用面向对象软件的基础》,归纳了23个软件设计模式。
模式不断地被应用到软件工程的开发组织、软件处理、项目配置管理等各个方面,但至今得到了最深研究的仍是设计模式和代码模式。
设计模式主要分为创建型模式、结构型模式和行为型模式三种。
创建型模式(Creational Pattern),就是用来创建对象的模式,是对实例化过程的抽象化。创建模式描述了怎样构造和封装动态的决定,创建模式将对象的创建、组合、表示独立于系统,系统可以得到很大的灵活:创建对象,创建者,创建方式,创建时间,都可以自由配置。
结构型模式(Structural Pattern)描述如何将类或者对象结合在一起形成更大的结构。
行为型模式(Behavioral Pattern)是对在不同的对象之间划分责任和算法的抽象化。描述类或对象之间如何交互以及如何分配职责,它所牵涉的不仅是类或对象,还有它们之间的通信模式。