学习笔记:The beauty of design patterns 设计模式之美 组合优于继承。应用复杂的方法就是拆分。浅拷贝,只是复制了对象的引用。 设计模式实例代码 创建型设计模式 03 单例模式 工厂模式 00 简单工厂 04 工厂方法 05 抽象工厂 06 建造者模式 07 原型模式 结构型设计模式 09 代理模式 20 装饰器模式 02 适配器模式 22 桥接模式 01 门面模式 13 组合模式 18 享元模式 行为型设计模式 10 观察者模式 14 模板方法模式 15 策略模式 21 职责链模式 16 状态模式 12 迭代器模式 23 访问者模式 17 备忘录模式 11 命令模式 19 解释器模式 08 中介模式 总结 实际上,设计模式要做的主要事情就是给代码解耦。创造型模式是将创建和使用解耦,结构型模式是将不同功能解耦,行为型模式是将不同的行为解耦。 利用更好的代码结构,将大类拆分成职责单一的小类,让其满足开闭原则,以及高内聚、低耦合等特性,来控制代码的复杂性,提高可扩展性。 命令模式、解释器模式、中介模式,使用频率低、理解难度大,只在特定的应用场景下才会用到。 参考 Go 语言设计模式 - 实例代码