设计模式(Design Pattern)的思想来源于建筑学领域。著名建筑学家Christopher Alexander和他的同事们在1977年出版的《A Pattern Language:Towns,Buildings,Construction》一书中,以模式(Pattern)这一术语来概括建筑学中常见的设计问题及其解决方案:“每个模式都描述了在环境中反复出现的(某类)问题,并一一种适当的方式描述该问题的核心解决方案,以时该方案可以重复使用。"可见,模式的核心思想时进行设计复用。
计算机科学家Kent Beck等人在1987年OOPSLA国际会议上介绍了他们在利用Smalltalk 语言进行用户开发时所总结的一些模式,首次将模式的思想引入到面向对象程序设计领域,从此在软件工程领域开启了一场“模式”运动。
1994年,被称为“四人帮”(Gang of four,GOF)的Erich Gamam、Richard Helm、Ralph Johnson和John Vissides等人所著的《Design Pattern:Elements of Reusable Object - Oriented Software》成为软件工程中关于设计模式的标志性著作。在该书中,Erich Gamma 等人认为“设计模式描述了定制化的相互通信的对象与类,解决特定环境中的通用设计问题。”并总结了面向程序设计中3类23中设计模式。
随着模式运动的发展,很多研究者从不同领域对设计模式展开了深入研究。
Frank Buschmann等人所著的《Pattern - Oriented Software Architecture》系列(共4卷)是关于设计模式的另一套经典著作 ,主要讨论了分布式计算机领域中的各种设计模式。
在企业应用软件领域,Martin Fowler 在《Pattern of Enterprise Application Architecture》一书中,针对企业应用软件的特点总结了10类41中设计模式。
软件设计模式的由来
最新推荐文章于 2023-04-03 22:04:28 发布