02@设计模式概览

来源:互联网 发布:一个域名绑定多个ip 编辑:程序博客网 时间:2024/06/06 03:13

设计模式是有经验的面向对象的软件开发人员最好的实践经验的体现。设计模式是软件开发人员在软件开发的过程中所遇到的常见的问题的一套解决方案。这些方案是无数软件开发人员在长期实践中,经历无数的实践和错误所总结出来的。

什么是GOF(Gang of Four)?
在1994年,有四个作者(Erich Gamma, Richard Helm, Ralph Johnson 和 John Vlissides)出版了一部叫做设计模式-面向对象软件中元素的重用(Design Patterns - Elements of Reusable Object-Oriented Software),这本书把设计模式的概念引入到了软件开发领域。

这些作者一起以GOF的昵称为人所知。根据这些作者的设计理念。设计模式是基于以下几条面向对象设计的原则:

  1. 以面向接口的方式进行编程,而不是以面向实现的方式进行编程。
  2. 优先使用对象组合的形式,而不是优先选用继承的形式。

    设计模式的使用
    在软件开发的过程中有两种主要的方式使用设计模式。

Common platform for developers

设计模式提供一种标准的术语来指定一种特别的情景。例如,单例设计模式意味使用一个实例对象,所有知道单例设计模式的开发则就知道是指使用一个实例对象,然后他们之间可以相互转告说这个程序将使用单例设计模式。

最好的实践

在经过了一段很长的时间后,设计模式已经演进很多了,他们为软件开发过程中所遇到的某些特定问题提供了最好的解决方案。通过学习这些设计模式将帮助那些缺乏经验的开发者以更简单和更快的方式去学习软件的设计。

设计模式的类型
就像书中(Design Patterns - Elements of Reusable Object-Oriented Software)所引用的设计模式。这里一共有23种设计模式,他们可以被分为三大类:创建型模式,结构型模式和行为型模式。另外我们将讨论另外一种设计模式分类:J2EE型设计模式。

  1. 创建型模式
    这种设计模式通过提供一个创建实例对象的方法,同时隐藏创建实例对象的具体逻辑,而不是通过使用new这种操作来直接实例化一个对象。这种方法给程序带来了更多的可变性:在一个给定的使用方法时,到底选择去创建哪一个对象。

  2. 结构型模式
    这种设计模式涉及到类和组合对象(一个对象的属性中包含许多其他类型的对象)。继承的概念被应用于组合多个接口(interfaces),并通过定义方法来组合对象,以让对象获取新的功能。

  3. 行为型模式
    这种什么模式特指涉及到不同对象之间的相互调用。

  4. J2EE型模式
    这种设计模式是特指涉及到表现层。这些模式由Sun Java center来划分。

0 0