gitextract_hshruwzb/ ├── .gitignore ├── .travis.yml ├── 00_simple_factory/ │ ├── README.md │ ├── simple.go │ └── simple_test.go ├── 01_facade/ │ ├── README.md │ ├── facade.go │ └── facade_test.go ├── 02_adapter/ │ ├── README.md │ ├── adapter.go │ └── adapter_test.go ├── 03_singleton/ │ ├── README.md │ ├── singleton.go │ └── singleton_test.go ├── 04_factory_method/ │ ├── README.md │ ├── factorymethod.go │ └── factorymethod_test.go ├── 05_abstract_factory/ │ ├── README.md │ ├── abstractfactory.go │ └── abstractfactory_test.go ├── 06_builder/ │ ├── builder.go │ └── builder_test.go ├── 07_prototype/ │ ├── README.md │ ├── prototype.go │ └── prototype_test.go ├── 08_mediator/ │ ├── README.md │ ├── mediator.go │ └── mediator_test.go ├── 09_proxy/ │ ├── README.md │ ├── proxy.go │ └── proxy_test.go ├── 10_observer/ │ ├── README.md │ ├── observer.go │ └── observer_test.go ├── 11_command/ │ ├── README.md │ ├── command.go │ └── command_test.go ├── 12_iterator/ │ ├── README.md │ ├── iterator.go │ └── iterator_test.go ├── 13_composite/ │ ├── README.md │ ├── composite.go │ └── composite_test.go ├── 14_template_method/ │ ├── README.md │ ├── templatemethod.go │ └── templatemethod_test.go ├── 15_strategy/ │ ├── README.md │ ├── strategy.go │ └── strategy_test.go ├── 16_state/ │ ├── README.md │ ├── state.go │ └── state_test.go ├── 17_memento/ │ ├── README.md │ ├── memento.go │ └── memento_test.go ├── 18_flyweight/ │ ├── README.md │ ├── flyweight.go │ └── flyweight_test.go ├── 19_interpreter/ │ ├── README.md │ ├── interpreter.go │ └── interpreter_test.go ├── 20_decorator/ │ ├── README.md │ ├── decorator.go │ └── decorator_test.go ├── 21_chain_of_responsibility/ │ ├── README.md │ ├── chain.go │ └── chain_test.go ├── 22_bridge/ │ ├── README.md │ ├── bridge.go │ └── bridge_test.go ├── 23_visitor/ │ ├── README.md │ ├── visitor.go │ └── visitor_test.go ├── LICENSE └── README.md