设计模式——概览

除了功能和性能外,可维护性也是软件开发关注的一大重点,因为任何有价值的软件系统都处于不断迭代的过程中,迭代就意味着变化,例如功能扩展、系统移植等等。而软件开发成本巨大,如何应对变化就成了一门大学问。

设计模式就是为了应对变化,它是面向对象软件设计的精髓,每一种设计模式都描述了在我们周围不断重复出现的问题以及解决该类问题的最佳方案。

虽然大多数书本上只讲解典型的23种设计模式,但设计模式作为工程经验的产物绝对是不断发展变化的。

本系列文章以设计模式的类图为核心,随着项目经验的丰富,将为每种设计模式逐步添加案例分析和使用心得分享。

基本要素

  • 模式名
  • 问题
  • 解决方案:如何设计类或对象的结构来解决问题。
  • 效果:设计模式在控制变化上起到的作用。

怎么学

  • 每一种设计模式应对的典型场景。
  • 每一种设计模式的类图。
  • 每一种设计模式的代码实现关键点。

23种设计模式

记忆顺口溜:

共筹建元旦(工抽建原单)
世代想组装外桥(适代享组装外桥)
命中介叠被子,壮观虐魔方(命中解迭备职,状观略模访)

评论