什么是设计模式?Design pattern--和生活结合更好理解

什么是设计模式

  • 一套被反复使用、多数人知晓的、经过分类编目的、代码 设计经验 的总结;
  • 使用设计模式是为了 可重用 代码、让代码 更容易 被他人理解、保证代码 可靠性;
  • 设计模式使代码编制  真正工程化;
  • 设计模式使软件工程的 基石脉络, 如同大厦的结构一样;
  • 并不直接用来完成代码的编写,而是 描述 在各种不同情况下,要怎么解决问题的一种方案;
  • 能使不稳定依赖于相对稳定、具体依赖于相对抽象,避免引起麻烦的紧耦合,以增强软件设计面对并适应变化的能力。

设计模式的由来


哥特式建筑


     



中式建筑




设计模式的由来


建筑师 克里斯托佛·亚历山大 在1977-1979年编制了一本汇集设计模式的书

肯特· 贝克 和 沃德·坎宁安 在 1987年,利用克里斯托佛·亚历山大 在建筑设计领域里的思想开发了 设计模式 并把此思想 应用在Smalltalk 中的图形用户接口的生成中

1988年,Erich Gamma 在他的苏黎世大学博士毕业论文中开始尝试把这种思想 改写为适用于软件开发

与此同时 James Coplien 在 1989年至1991 年 也在利用相同的思想致力于C++ 的 开发,而后与1991 年 发表了他的著作 Advanced C++ Idioms。

1995年,Richard Helm,Ralph Johnson,John Vlissides(Gof)合作出版了 Design Patterns -- Elements of Reusable  Object-Oriented Software 一书,在此书中收录了23 个设计模式。




相关文章

什么是设计模式一套被反复使用、多数人知晓的、经过分类编目...
单一职责原则定义(Single Responsibility Principle,SRP)...
动态代理和CGLib代理分不清吗,看看这篇文章,写的非常好,强...
适配器模式将一个类的接口转换成客户期望的另一个接口,使得...
策略模式定义了一系列算法族,并封装在类中,它们之间可以互...
设计模式讲的是如何编写可扩展、可维护、可读的高质量代码,...