设计模式概述

1 设计模式的诞生与发展

1.1 模式的诞生与定义

Christopher Alexander(克里斯托弗.亚历山大)--模式之父。他给出模式定义:每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心,通过这种方式,我们可以无数次的重复那些已有的成功的解决方案,无须再重复相同的工作。简单来说:模式是再特定环境下人们解决某类重复出现问题的一套成功或有效的解决方案。

1.2 软件模式的诞生

1990年,软件工程界开始关注Christopher Alexander等在这一住宅、公共建筑与城市规划领域的重大突破。最早将模式的思想引入软件工程方法学的是1991-1992年以“四人组(Gang of Four,简称GoF。GoF将模式的概念引入软件工程领域,这标志着软件模式的诞生。

1.3   软件模式的发展

1987年,Kent Beck和Ward Cunning借鉴Alexander的模式思想在程序开发中开始应用一些模式,在OOPSLA会议上发表了他们的成果。

1990年,OOPSLA与ECOOP联合举办,Erich Gamma和Richard Helm等人开始讨论有关模式的话题,“四人组正式成立”。

1991年,OOPSLA, Anderson再度主持研讨会,模式已经逐渐成为人们讨论的话题。

1993年,Kent Beck和Grady Booch赞助了第一次关于设计模式的会议,这个设计模式研究发展成为著名的Hillside Group研究组。

1994年,由Hillside Group发起,在美国伊利诺伊州的Allerton Park召开了第一届关于面向对象模式的世界性会议。

1995年,”四人组”出版了《设计模式:可复用面向对象软件的基础》一书。

1995—今天,设计模式在软件开发中得到广泛应用。

诞生了越来越多与设计模式相关的书籍和网站,设计模式也成为一门独立的课程出现在国内外研究生和大学的课堂。

2 设计模式的定义与分类

2.1 设计模式定义

设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结,使用

设计模式是为了可重用代码、让代码更容易被他人理解、保证代码的可靠性。

2.2 设计模式的分类

根据模式的目的分为:创建型(创建型模式主要用于创建对象),结构型(结构型模式主要用于处理类或对象的组合)和行为型(行为型模式主要用于描述对类或对象怎样交互和怎样分配职责。

根据模式的范围(即模式主要是用于处理类之间的关系还是处理对象之间的关系)分为:类模式(处理类与子类之间的关系,是属于静态的)和对象模式(处理对象间的关系,是动态)。

3 设计模式的作用

1.设计模式以一种标准的方式供广大开发人员使用,给开发者的沟通提供了一套机制,帮助开发者更好地明白和更清晰地描述一段被给出代码。

2.设计模式可以使人们更加方便简单符用成功的设计模式和结构。

3.设计模式可以使人们深入理解面向对象的设计思想,提供软件的开发效率,节约设计成本。

posted @ 2020-03-11 10:44  jyqdaisy  阅读(166)  评论(0编辑  收藏  举报