原文链接
译者:smallclover
个人翻译,水平有限,如有错误欢迎指出,谢谢!
设计模式-概述
设计模式体现了经验丰富的面向对象软件开发人员的最佳实践。设计模式是软件开发人员在整个软件开发的过程中面临普遍问题的解决方案。这些问题由众多软件开发人员在一段相当可观的时间里通过实验和错误得到的。
什么是“四人帮”(Gang of Four简称GOF,中文译作“四人帮”)?
在1994年四个作者Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides出版了一本标题为 Design Patterns-Elements of Reusable Object-Oriented Software(《可复用面向对象软件的基础》)的书,书中提出了设计模式在软件开发中概念。
这些作者被统称为“四人帮”。根据这些作者的观念,设计模式主要是基于一下几种面向对象的设计原则。
- 针对接口编程而非针对实现编程
- 优先使用组合而非继承
设计模式的用途
设计模式在软件开发的过程中主要有两种用途。
开发者开发公共平台
设计模式提供一个标准的术语和具体的特定的场景。例如,单例模式表示使用单一对象。所以所有的开发者都熟悉单例模式使用单一的对象,并且他们能告诉对方,这个程序遵循单例模式的原则。
最佳实践
设计模式已经发展了很长一段时间,他们提供了软件开发过程中面临某些问题的最佳解决方案。学习这些模式能帮助一些没有经验的开发者简单、快速的学习软件设计。
设计模式的种类
每种设计模式我们将参考书Design Patterns - Elements of Reusable Object-Oriented Software,这里有23中设计模式,它们被归为3种类别:创建型模式,结构型模式和行为型模式。我们还将讨论另外一个类别的设计模式:J2EE design patterns。