《Go语言设计模式》

👨‍🏫 宝典介绍

软件模式是将模式的一般概念应用于软件开发领域,即软件开发的总体指导思路或参照样板。软件模式并非仅限于设计模式,还包括架构模式、分析模式和过程模式等,实际上,在软件生存期的每一个阶段都存在着一些被认同的模式。

本书使用图形和代码结合的方式来解析设计模式;

每个模式都有相应的对象结构图,同时为了展示对象间的交互细节, 我会用到时序图来介绍其如何运行;(在状态模式中, 还会用到状态图,这种图的使用对于理解状态的转换非常直观)

为了让大家能读懂UML图,在最前面会有一篇文章来介绍UML图形符号;

在系统的学习设计模式之后,我们需要达到3个层次:

  • 能在白纸上画出所有的模式结构和时序图;
  • 能用代码实现;如果模式的代码都没有实现过,是用不出来的;即所谓,看得懂,不会用;
  • 灵活应用到工作中的项目中;

#📚 ​宝典内容

创建型模式

  • 模式介绍
  • 简单工厂模式
  • 工厂方法模式
  • 抽象工厂模式
  • 建造者模式
  • 原型模式
  • 单例模式

结构型模式

  • 模式介绍
  • 适配器模式
  • 桥接模式
  • 装饰模式
  • 外观模式
  • 享元模式
  • 代理模式
  • 组合模式

行为型模式

  • 模式介绍
  • 命令模式
  • 中介者模式
  • 观察者模式
  • 状态模式
  • 策略模式
  • 迭代器模式
  • 模板方法模式
  • 备忘录模式
  • 解释器模式
  • 职责链模式
  • 访问者模式