结构型模式 | 青训营

73 阅读1分钟

本系列笔记总结23种设计模式在GO语言中的实现方法,参考了refactoringguru.cn/design-patt… 网站的内容,也包括我自己的理解。如果有理解不对的地方,恳请批评指正。

结构型模式

结构型模式介绍如何将对象和类组装成较大的结构, 并同时保持结构的灵活和高效。

结构型模式总共有七种:

  1. 适配器模式
  2. 桥接模式
  3. 代理模式
  4. 享元模式
  5. 装饰模式
  6. 外观模式
  7. 组合模式

尽管这些模式会增加代码的复杂程度,但它们各自解决了不同的问题,也可以相互配合发挥更强的效果。

付出代码量增加的代价,项目获得了更好的可拓展性,模块之间的耦合度也降低。这在项目很小时弊大于利,但在项目变得越来越庞大时,这些优点就变得至关重要了。

适配器模式

顾名思义,适配器模式是解决接口不适配问题的设计模式。

有时候我们无法改动接口返回的数据结构(比如是调用了封装的第三方包),这时候就需要用到适配器了:传入数据结构A,返回转化后的数据结构B。

虽然很简单,有种“这还用说”的感觉,但是确实是一种非常重要且常见的模式。