├── .gitignore ├── .vscode └── settings.json ├── README.md ├── behavioral ├── chain-of-responsibility │ ├── README.md │ ├── cashier.go │ ├── department.go │ ├── diagram.puml │ ├── doctor.go │ ├── medical.go │ ├── patient.go │ ├── reception.go │ └── responsibility_test.go ├── command │ ├── README.md │ ├── button.go │ ├── command.go │ ├── device.go │ ├── diagram.puml │ ├── offcommand.go │ ├── oncommand.go │ ├── tv.go │ └── tv_test.go ├── iterator │ ├── README.md │ ├── collection.go │ ├── diagram.puml │ ├── iterator.go │ ├── user.go │ ├── user_test.go │ ├── usercollection.go │ └── useriterator.go ├── mediator │ ├── README.md │ ├── diagram.puml │ ├── goodstrain.go │ ├── mediator.go │ ├── passengertrain.go │ ├── stationmanager.go │ ├── train.go │ └── train_test.go ├── memento │ ├── README.md │ ├── caretaker.go │ ├── diagram.puml │ ├── memento.go │ ├── memmento_test.go │ └── originator.go ├── observer │ ├── README.md │ ├── customer.go │ ├── diagram.puml │ ├── item.go │ ├── observer.go │ ├── observer_test.go │ └── subject.go ├── state │ ├── README.md │ ├── diagram.puml │ ├── hasitemstate.go │ ├── hasmoneystate.go │ ├── itemrequestedstate.go │ ├── noitemstate.go │ ├── state.go │ ├── state_test.go │ └── vendingmachine.go ├── strategy │ ├── README.md │ ├── cache.go │ ├── cache_test.go │ ├── diagram.puml │ ├── evictionalgo.go │ ├── fifo.go │ ├── lfu.go │ └── lru.go ├── template-method │ ├── README.md │ ├── diagram.puml │ ├── email.go │ ├── opt_test.go │ ├── otp.go │ └── sms.go └── vistor │ ├── README.md │ ├── areacalc.go │ ├── circle.go │ ├── diagram.puml │ ├── middlecoordinates.go │ ├── rectangle.go │ ├── shape.go │ ├── square.go │ ├── visitor.go │ └── vistor_test.go ├── creational ├── abstract-factory │ ├── README.md │ ├── adidas.go │ ├── diagram.puml │ ├── nike.go │ ├── shoe.go │ ├── short.go │ ├── sports-factory.go │ └── sports-factory_test.go ├── builder │ ├── README.md │ ├── builder_test.go │ ├── diagram.puml │ ├── director.go │ ├── house.go │ ├── ibuilder.go │ ├── iglooBuilder.go │ └── normalBuilder.go ├── factory-method │ ├── README.md │ ├── ak47.go │ ├── diagram.puml │ ├── gun.go │ ├── gunfactory.go │ ├── gunfactory_test.go │ ├── igun.go │ └── maverick.go ├── prototype │ ├── README.md │ ├── diagram.puml │ ├── file.go │ ├── file_test.go │ ├── folder.go │ └── inode.go └── singleton │ ├── README.md │ ├── diagram.puml │ ├── singleton.go │ └── singleton_test.go ├── image ├── Adapter-Design-Pattern.jpg ├── Bridge-Design-Pattern.jpg ├── Builder-Design-Patter.jpg ├── Chain-of-Responsibility-Design-Pattern.jpg ├── Command-Design-Pattern.jpg ├── Composite-Design-Pattern.jpg ├── Facade-Design-Pattern.jpg ├── Factory-Design-Pattern.jpg ├── Flyweight-Design-Pattern.png ├── Iterator-Design-Pattern.jpg ├── Observer-Design-Pattern.jpg ├── Prototype-Pattern.jpg ├── Proxy-Design-Pattern.jpg ├── State-Design-Pattern.jpg ├── Strategy-Design-Pattern.jpg └── Visitor-Design-Pattern.jpg ├── images ├── behavioral │ ├── chain-of-responsibility │ │ └── diagram │ │ │ └── diagram.svg │ ├── command │ │ └── diagram │ │ │ └── diagram.svg │ ├── iterator │ │ └── diagram │ │ │ └── diagram.svg │ ├── mediator │ │ └── diagram │ │ │ └── diagram.svg │ ├── memento │ │ └── diagram │ │ │ └── diagram.svg │ ├── observer │ │ └── diagram │ │ │ └── diagram.svg │ ├── state │ │ └── diagram │ │ │ └── diagram.svg │ ├── strategy │ │ └── diagram │ │ │ └── diagram.svg │ ├── template-method │ │ └── diagram │ │ │ └── diagram.svg │ └── vistor │ │ └── diagram │ │ └── diagram.svg ├── creational │ ├── abstract-factory │ │ └── diagram │ │ │ └── diagram.svg │ ├── builder │ │ └── diagram │ │ │ └── diagram.svg │ ├── factory-method │ │ └── diagram │ │ │ └── diagram.svg │ ├── prototype │ │ └── diagram │ │ │ └── diagram.svg │ └── singleton │ │ └── diagram │ │ └── diagram.svg └── structural │ ├── adapter │ └── diagram │ │ └── diagram.svg │ ├── bridge │ └── diagram │ │ └── diagram.svg │ ├── composite │ └── diagram │ │ └── diagram.svg │ ├── facade │ └── diagram │ │ └── diagram.svg │ ├── flyweight │ └── diagram │ │ └── diagram.svg │ └── proxy │ └── diagram │ └── diagram.svg └── structural ├── adapter ├── README.md ├── adapter_test.go ├── client.go ├── computer.go ├── diagram.puml ├── mac.go ├── windows.go └── windowsadapter.go ├── bridge ├── README.md ├── bridge_test.go ├── computer.go ├── diagram.puml ├── epson.go ├── hp.go ├── mac.go ├── printer.go └── win.go ├── composite ├── README.md ├── component.go ├── composite_test.go ├── diagram.puml ├── file.go └── folder.go ├── decorator ├── README.md └── diagram.puml ├── facade ├── README.md ├── account.go ├── diagram.puml ├── facade_test.go ├── ledger.go ├── notification.go ├── securitycode.go ├── wallet.go └── walletfacade.go ├── flyweight ├── README.md ├── counterterroristdress.go ├── diagram.puml ├── dress.go ├── dressfactory.go ├── flyweight_test.go ├── player.go └── terroristdress.go └── proxy ├── README.md ├── application.go ├── diagram.puml ├── nginx.go ├── proxy_test.go └── server.go /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/README.md -------------------------------------------------------------------------------- /behavioral/chain-of-responsibility/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/chain-of-responsibility/README.md -------------------------------------------------------------------------------- /behavioral/chain-of-responsibility/cashier.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/chain-of-responsibility/cashier.go -------------------------------------------------------------------------------- /behavioral/chain-of-responsibility/department.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/chain-of-responsibility/department.go -------------------------------------------------------------------------------- /behavioral/chain-of-responsibility/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/chain-of-responsibility/diagram.puml -------------------------------------------------------------------------------- /behavioral/chain-of-responsibility/doctor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/chain-of-responsibility/doctor.go -------------------------------------------------------------------------------- /behavioral/chain-of-responsibility/medical.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/chain-of-responsibility/medical.go -------------------------------------------------------------------------------- /behavioral/chain-of-responsibility/patient.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/chain-of-responsibility/patient.go -------------------------------------------------------------------------------- /behavioral/chain-of-responsibility/reception.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/chain-of-responsibility/reception.go -------------------------------------------------------------------------------- /behavioral/chain-of-responsibility/responsibility_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/chain-of-responsibility/responsibility_test.go -------------------------------------------------------------------------------- /behavioral/command/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/command/README.md -------------------------------------------------------------------------------- /behavioral/command/button.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/command/button.go -------------------------------------------------------------------------------- /behavioral/command/command.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/command/command.go -------------------------------------------------------------------------------- /behavioral/command/device.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/command/device.go -------------------------------------------------------------------------------- /behavioral/command/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/command/diagram.puml -------------------------------------------------------------------------------- /behavioral/command/offcommand.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/command/offcommand.go -------------------------------------------------------------------------------- /behavioral/command/oncommand.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/command/oncommand.go -------------------------------------------------------------------------------- /behavioral/command/tv.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/command/tv.go -------------------------------------------------------------------------------- /behavioral/command/tv_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/command/tv_test.go -------------------------------------------------------------------------------- /behavioral/iterator/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/iterator/README.md -------------------------------------------------------------------------------- /behavioral/iterator/collection.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/iterator/collection.go -------------------------------------------------------------------------------- /behavioral/iterator/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/iterator/diagram.puml -------------------------------------------------------------------------------- /behavioral/iterator/iterator.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/iterator/iterator.go -------------------------------------------------------------------------------- /behavioral/iterator/user.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/iterator/user.go -------------------------------------------------------------------------------- /behavioral/iterator/user_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/iterator/user_test.go -------------------------------------------------------------------------------- /behavioral/iterator/usercollection.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/iterator/usercollection.go -------------------------------------------------------------------------------- /behavioral/iterator/useriterator.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/iterator/useriterator.go -------------------------------------------------------------------------------- /behavioral/mediator/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/mediator/README.md -------------------------------------------------------------------------------- /behavioral/mediator/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/mediator/diagram.puml -------------------------------------------------------------------------------- /behavioral/mediator/goodstrain.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/mediator/goodstrain.go -------------------------------------------------------------------------------- /behavioral/mediator/mediator.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/mediator/mediator.go -------------------------------------------------------------------------------- /behavioral/mediator/passengertrain.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/mediator/passengertrain.go -------------------------------------------------------------------------------- /behavioral/mediator/stationmanager.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/mediator/stationmanager.go -------------------------------------------------------------------------------- /behavioral/mediator/train.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/mediator/train.go -------------------------------------------------------------------------------- /behavioral/mediator/train_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/mediator/train_test.go -------------------------------------------------------------------------------- /behavioral/memento/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/memento/README.md -------------------------------------------------------------------------------- /behavioral/memento/caretaker.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/memento/caretaker.go -------------------------------------------------------------------------------- /behavioral/memento/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/memento/diagram.puml -------------------------------------------------------------------------------- /behavioral/memento/memento.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/memento/memento.go -------------------------------------------------------------------------------- /behavioral/memento/memmento_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/memento/memmento_test.go -------------------------------------------------------------------------------- /behavioral/memento/originator.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/memento/originator.go -------------------------------------------------------------------------------- /behavioral/observer/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/observer/README.md -------------------------------------------------------------------------------- /behavioral/observer/customer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/observer/customer.go -------------------------------------------------------------------------------- /behavioral/observer/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/observer/diagram.puml -------------------------------------------------------------------------------- /behavioral/observer/item.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/observer/item.go -------------------------------------------------------------------------------- /behavioral/observer/observer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/observer/observer.go -------------------------------------------------------------------------------- /behavioral/observer/observer_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/observer/observer_test.go -------------------------------------------------------------------------------- /behavioral/observer/subject.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/observer/subject.go -------------------------------------------------------------------------------- /behavioral/state/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/state/README.md -------------------------------------------------------------------------------- /behavioral/state/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/state/diagram.puml -------------------------------------------------------------------------------- /behavioral/state/hasitemstate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/state/hasitemstate.go -------------------------------------------------------------------------------- /behavioral/state/hasmoneystate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/state/hasmoneystate.go -------------------------------------------------------------------------------- /behavioral/state/itemrequestedstate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/state/itemrequestedstate.go -------------------------------------------------------------------------------- /behavioral/state/noitemstate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/state/noitemstate.go -------------------------------------------------------------------------------- /behavioral/state/state.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/state/state.go -------------------------------------------------------------------------------- /behavioral/state/state_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/state/state_test.go -------------------------------------------------------------------------------- /behavioral/state/vendingmachine.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/state/vendingmachine.go -------------------------------------------------------------------------------- /behavioral/strategy/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/strategy/README.md -------------------------------------------------------------------------------- /behavioral/strategy/cache.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/strategy/cache.go -------------------------------------------------------------------------------- /behavioral/strategy/cache_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/strategy/cache_test.go -------------------------------------------------------------------------------- /behavioral/strategy/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/strategy/diagram.puml -------------------------------------------------------------------------------- /behavioral/strategy/evictionalgo.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/strategy/evictionalgo.go -------------------------------------------------------------------------------- /behavioral/strategy/fifo.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/strategy/fifo.go -------------------------------------------------------------------------------- /behavioral/strategy/lfu.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/strategy/lfu.go -------------------------------------------------------------------------------- /behavioral/strategy/lru.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/strategy/lru.go -------------------------------------------------------------------------------- /behavioral/template-method/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/template-method/README.md -------------------------------------------------------------------------------- /behavioral/template-method/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/template-method/diagram.puml -------------------------------------------------------------------------------- /behavioral/template-method/email.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/template-method/email.go -------------------------------------------------------------------------------- /behavioral/template-method/opt_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/template-method/opt_test.go -------------------------------------------------------------------------------- /behavioral/template-method/otp.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/template-method/otp.go -------------------------------------------------------------------------------- /behavioral/template-method/sms.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/template-method/sms.go -------------------------------------------------------------------------------- /behavioral/vistor/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/vistor/README.md -------------------------------------------------------------------------------- /behavioral/vistor/areacalc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/vistor/areacalc.go -------------------------------------------------------------------------------- /behavioral/vistor/circle.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/vistor/circle.go -------------------------------------------------------------------------------- /behavioral/vistor/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/vistor/diagram.puml -------------------------------------------------------------------------------- /behavioral/vistor/middlecoordinates.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/vistor/middlecoordinates.go -------------------------------------------------------------------------------- /behavioral/vistor/rectangle.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/vistor/rectangle.go -------------------------------------------------------------------------------- /behavioral/vistor/shape.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/vistor/shape.go -------------------------------------------------------------------------------- /behavioral/vistor/square.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/vistor/square.go -------------------------------------------------------------------------------- /behavioral/vistor/visitor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/vistor/visitor.go -------------------------------------------------------------------------------- /behavioral/vistor/vistor_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/behavioral/vistor/vistor_test.go -------------------------------------------------------------------------------- /creational/abstract-factory/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/abstract-factory/README.md -------------------------------------------------------------------------------- /creational/abstract-factory/adidas.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/abstract-factory/adidas.go -------------------------------------------------------------------------------- /creational/abstract-factory/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/abstract-factory/diagram.puml -------------------------------------------------------------------------------- /creational/abstract-factory/nike.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/abstract-factory/nike.go -------------------------------------------------------------------------------- /creational/abstract-factory/shoe.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/abstract-factory/shoe.go -------------------------------------------------------------------------------- /creational/abstract-factory/short.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/abstract-factory/short.go -------------------------------------------------------------------------------- /creational/abstract-factory/sports-factory.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/abstract-factory/sports-factory.go -------------------------------------------------------------------------------- /creational/abstract-factory/sports-factory_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/abstract-factory/sports-factory_test.go -------------------------------------------------------------------------------- /creational/builder/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/builder/README.md -------------------------------------------------------------------------------- /creational/builder/builder_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/builder/builder_test.go -------------------------------------------------------------------------------- /creational/builder/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/builder/diagram.puml -------------------------------------------------------------------------------- /creational/builder/director.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/builder/director.go -------------------------------------------------------------------------------- /creational/builder/house.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/builder/house.go -------------------------------------------------------------------------------- /creational/builder/ibuilder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/builder/ibuilder.go -------------------------------------------------------------------------------- /creational/builder/iglooBuilder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/builder/iglooBuilder.go -------------------------------------------------------------------------------- /creational/builder/normalBuilder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/builder/normalBuilder.go -------------------------------------------------------------------------------- /creational/factory-method/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/factory-method/README.md -------------------------------------------------------------------------------- /creational/factory-method/ak47.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/factory-method/ak47.go -------------------------------------------------------------------------------- /creational/factory-method/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/factory-method/diagram.puml -------------------------------------------------------------------------------- /creational/factory-method/gun.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/factory-method/gun.go -------------------------------------------------------------------------------- /creational/factory-method/gunfactory.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/factory-method/gunfactory.go -------------------------------------------------------------------------------- /creational/factory-method/gunfactory_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/factory-method/gunfactory_test.go -------------------------------------------------------------------------------- /creational/factory-method/igun.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/factory-method/igun.go -------------------------------------------------------------------------------- /creational/factory-method/maverick.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/factory-method/maverick.go -------------------------------------------------------------------------------- /creational/prototype/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/prototype/README.md -------------------------------------------------------------------------------- /creational/prototype/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/prototype/diagram.puml -------------------------------------------------------------------------------- /creational/prototype/file.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/prototype/file.go -------------------------------------------------------------------------------- /creational/prototype/file_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/prototype/file_test.go -------------------------------------------------------------------------------- /creational/prototype/folder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/prototype/folder.go -------------------------------------------------------------------------------- /creational/prototype/inode.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/prototype/inode.go -------------------------------------------------------------------------------- /creational/singleton/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/singleton/README.md -------------------------------------------------------------------------------- /creational/singleton/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/singleton/diagram.puml -------------------------------------------------------------------------------- /creational/singleton/singleton.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/singleton/singleton.go -------------------------------------------------------------------------------- /creational/singleton/singleton_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/creational/singleton/singleton_test.go -------------------------------------------------------------------------------- /image/Adapter-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Adapter-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/Bridge-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Bridge-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/Builder-Design-Patter.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Builder-Design-Patter.jpg -------------------------------------------------------------------------------- /image/Chain-of-Responsibility-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Chain-of-Responsibility-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/Command-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Command-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/Composite-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Composite-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/Facade-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Facade-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/Factory-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Factory-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/Flyweight-Design-Pattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Flyweight-Design-Pattern.png -------------------------------------------------------------------------------- /image/Iterator-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Iterator-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/Observer-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Observer-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/Prototype-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Prototype-Pattern.jpg -------------------------------------------------------------------------------- /image/Proxy-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Proxy-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/State-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/State-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/Strategy-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Strategy-Design-Pattern.jpg -------------------------------------------------------------------------------- /image/Visitor-Design-Pattern.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/image/Visitor-Design-Pattern.jpg -------------------------------------------------------------------------------- /images/behavioral/chain-of-responsibility/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/behavioral/chain-of-responsibility/diagram/diagram.svg -------------------------------------------------------------------------------- /images/behavioral/command/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/behavioral/command/diagram/diagram.svg -------------------------------------------------------------------------------- /images/behavioral/iterator/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/behavioral/iterator/diagram/diagram.svg -------------------------------------------------------------------------------- /images/behavioral/mediator/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/behavioral/mediator/diagram/diagram.svg -------------------------------------------------------------------------------- /images/behavioral/memento/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/behavioral/memento/diagram/diagram.svg -------------------------------------------------------------------------------- /images/behavioral/observer/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/behavioral/observer/diagram/diagram.svg -------------------------------------------------------------------------------- /images/behavioral/state/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/behavioral/state/diagram/diagram.svg -------------------------------------------------------------------------------- /images/behavioral/strategy/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/behavioral/strategy/diagram/diagram.svg -------------------------------------------------------------------------------- /images/behavioral/template-method/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/behavioral/template-method/diagram/diagram.svg -------------------------------------------------------------------------------- /images/behavioral/vistor/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/behavioral/vistor/diagram/diagram.svg -------------------------------------------------------------------------------- /images/creational/abstract-factory/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/creational/abstract-factory/diagram/diagram.svg -------------------------------------------------------------------------------- /images/creational/builder/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/creational/builder/diagram/diagram.svg -------------------------------------------------------------------------------- /images/creational/factory-method/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/creational/factory-method/diagram/diagram.svg -------------------------------------------------------------------------------- /images/creational/prototype/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/creational/prototype/diagram/diagram.svg -------------------------------------------------------------------------------- /images/creational/singleton/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/creational/singleton/diagram/diagram.svg -------------------------------------------------------------------------------- /images/structural/adapter/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/structural/adapter/diagram/diagram.svg -------------------------------------------------------------------------------- /images/structural/bridge/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/structural/bridge/diagram/diagram.svg -------------------------------------------------------------------------------- /images/structural/composite/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/structural/composite/diagram/diagram.svg -------------------------------------------------------------------------------- /images/structural/facade/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/structural/facade/diagram/diagram.svg -------------------------------------------------------------------------------- /images/structural/flyweight/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/structural/flyweight/diagram/diagram.svg -------------------------------------------------------------------------------- /images/structural/proxy/diagram/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/images/structural/proxy/diagram/diagram.svg -------------------------------------------------------------------------------- /structural/adapter/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/adapter/README.md -------------------------------------------------------------------------------- /structural/adapter/adapter_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/adapter/adapter_test.go -------------------------------------------------------------------------------- /structural/adapter/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/adapter/client.go -------------------------------------------------------------------------------- /structural/adapter/computer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/adapter/computer.go -------------------------------------------------------------------------------- /structural/adapter/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/adapter/diagram.puml -------------------------------------------------------------------------------- /structural/adapter/mac.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/adapter/mac.go -------------------------------------------------------------------------------- /structural/adapter/windows.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/adapter/windows.go -------------------------------------------------------------------------------- /structural/adapter/windowsadapter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/adapter/windowsadapter.go -------------------------------------------------------------------------------- /structural/bridge/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/bridge/README.md -------------------------------------------------------------------------------- /structural/bridge/bridge_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/bridge/bridge_test.go -------------------------------------------------------------------------------- /structural/bridge/computer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/bridge/computer.go -------------------------------------------------------------------------------- /structural/bridge/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/bridge/diagram.puml -------------------------------------------------------------------------------- /structural/bridge/epson.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/bridge/epson.go -------------------------------------------------------------------------------- /structural/bridge/hp.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/bridge/hp.go -------------------------------------------------------------------------------- /structural/bridge/mac.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/bridge/mac.go -------------------------------------------------------------------------------- /structural/bridge/printer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/bridge/printer.go -------------------------------------------------------------------------------- /structural/bridge/win.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/bridge/win.go -------------------------------------------------------------------------------- /structural/composite/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/composite/README.md -------------------------------------------------------------------------------- /structural/composite/component.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/composite/component.go -------------------------------------------------------------------------------- /structural/composite/composite_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/composite/composite_test.go -------------------------------------------------------------------------------- /structural/composite/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/composite/diagram.puml -------------------------------------------------------------------------------- /structural/composite/file.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/composite/file.go -------------------------------------------------------------------------------- /structural/composite/folder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/composite/folder.go -------------------------------------------------------------------------------- /structural/decorator/README.md: -------------------------------------------------------------------------------- 1 | # Decorator 2 | -------------------------------------------------------------------------------- /structural/decorator/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/decorator/diagram.puml -------------------------------------------------------------------------------- /structural/facade/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/facade/README.md -------------------------------------------------------------------------------- /structural/facade/account.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/facade/account.go -------------------------------------------------------------------------------- /structural/facade/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/facade/diagram.puml -------------------------------------------------------------------------------- /structural/facade/facade_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/facade/facade_test.go -------------------------------------------------------------------------------- /structural/facade/ledger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/facade/ledger.go -------------------------------------------------------------------------------- /structural/facade/notification.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/facade/notification.go -------------------------------------------------------------------------------- /structural/facade/securitycode.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/facade/securitycode.go -------------------------------------------------------------------------------- /structural/facade/wallet.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/facade/wallet.go -------------------------------------------------------------------------------- /structural/facade/walletfacade.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/facade/walletfacade.go -------------------------------------------------------------------------------- /structural/flyweight/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/flyweight/README.md -------------------------------------------------------------------------------- /structural/flyweight/counterterroristdress.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/flyweight/counterterroristdress.go -------------------------------------------------------------------------------- /structural/flyweight/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/flyweight/diagram.puml -------------------------------------------------------------------------------- /structural/flyweight/dress.go: -------------------------------------------------------------------------------- 1 | package flyweight 2 | 3 | type dress interface { 4 | getColor() string 5 | } 6 | -------------------------------------------------------------------------------- /structural/flyweight/dressfactory.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/flyweight/dressfactory.go -------------------------------------------------------------------------------- /structural/flyweight/flyweight_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/flyweight/flyweight_test.go -------------------------------------------------------------------------------- /structural/flyweight/player.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/flyweight/player.go -------------------------------------------------------------------------------- /structural/flyweight/terroristdress.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/flyweight/terroristdress.go -------------------------------------------------------------------------------- /structural/proxy/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/proxy/README.md -------------------------------------------------------------------------------- /structural/proxy/application.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/proxy/application.go -------------------------------------------------------------------------------- /structural/proxy/diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/proxy/diagram.puml -------------------------------------------------------------------------------- /structural/proxy/nginx.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/proxy/nginx.go -------------------------------------------------------------------------------- /structural/proxy/proxy_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/proxy/proxy_test.go -------------------------------------------------------------------------------- /structural/proxy/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aierui/design-pattern-in-go/HEAD/structural/proxy/server.go --------------------------------------------------------------------------------