Go 语言设计模式的实现代码,Quick Start。
Table of Contents generated with DocToc
- Iterator 模式(迭代器模式):一个一个遍历
- Adapter 模式(适配器模式):加个 “适配器” 以便于复用
- Template Method 模式(模板方法模式):将具体处理交给子类
- Factory Method 模式(工厂方法模式):将实例的生成交给子类
- SingleTon 模式(单例模式):只有一个实例
- Prototype 模式(原型模式):通过复制生成实例
- Builder 模式(建造者模式):组装复杂的实例
- Abstract Factory 模式(抽象工厂模式):将关联零件组装成产品
- Bridge 模式(桥接模式):将类的功能层次结构与实现层次结构分离
- Strategy 模式(策略模式):整体地替换算法
- Composite 模式(组合模式):容器与内容的一致性
- Decorator 模式(装饰模式):装饰边框与被装饰物的一致性
- Visitor 模式(访问者模式):访问数据结构并处理数据
- Chain of Responsibility 模式(责任链模式):推卸责任
- Facade 模式(外观模式):简单窗口
- Mediator 模式(中介者模式):只有一个仲裁者
- Observer 模式(观察者模式):发送状态变化通知
- Memento 模式(备忘录模式):保存对象状态
- State 模式(状态模式):用类表示状态
- Flyweight 模式(享元模式):共享对象,避免浪费
- Proxy 模式(代理模式):只在必要时生成实例
- Command 模式(命令模式):命令也是类
- Interpreter 模式(解释器模式):语法规则也是类
- Abstract Factory 模式(抽象工厂模式)
- Builder 模式(建造者模式)
- Factory Method 模式(工厂方法模式)
- Prototype 模式(原型模式)
- SingleTon 模式(单例模式)
- Adapter 模式(适配器模式)
- Bridge 模式(桥接模式)
- Composite 模式(组合模式)
- Decorator 模式(装饰模式)
- Facade 模式(外观模式)
- Flyweight 模式(享元模式)
- Proxy 模式(代理模式)
- Chain of Responsibility 模式(责任链模式)
- Command 模式(命令模式)
- Interpreter 模式(解释器模式)
- Iterator 模式(迭代器模式)
- Mediator 模式(中介者模式)
- Memento 模式(备忘录模式)
- Observer 模式(观察者模式)
- State 模式(状态模式)
- Strategy 模式(策略模式)
- Template Method 模式(模板方法模式)
- Visitor 模式(访问者模式)
一直都想学习设计模式,但也只是想了,直到被 vasily 刺激 你能别写哈巴代码了吗
,于是痛定思痛买了本图解设计模式研读。由于平时又忙,周末又懒, 断断续续看了一个半月,终于读完了。收获很多,系统的了解了 GoF 设计模式,Golang 的使用也有所进步(可能),但离写出非常漂亮的代码还有段距离,用书中的话与大家共勉,Enjoy Patterns!
本 repo 参考了 senghoo/golang-design-pattern 的项目结构,代码实现和类图参考了 Refactoring.Guru 设计模式。