├── .gitignore ├── LICENSE ├── README.md ├── pydesignpatterns ├── behavioral │ └── chain_of_responsibility_planet.py ├── creational │ ├── abstractfactory_naive.py │ ├── abstractfactory_shape.py │ ├── builder_aircraft.py │ ├── builder_naive.py │ ├── factorymethod_car.py │ ├── factorymethod_cellphone.py │ ├── factorymethod_naive.py │ ├── prototype_naive.py │ ├── prototype_shape.py │ ├── simplefactory_burger.py │ ├── simplefactory_naive.py │ ├── simplefactory_pizza.py │ ├── singleton_counter.py │ ├── singleton_decorator.py │ ├── singleton_lazy_instantiation.py │ ├── singleton_metaclass.py │ ├── singleton_naive.py │ └── singleton_thread.py ├── diagrams │ ├── abstractfactory.png │ ├── builder.png │ ├── chainofresponsibility.png │ ├── factorymethod.png │ ├── prototype.png │ ├── simplefactory.png │ └── singleton.png ├── results │ ├── abstractfactory_naive.png │ ├── abstractfactory_shape.png │ ├── builder_aircraft.png │ ├── builder_naive.PNG │ ├── factorymethod_car.png │ ├── factorymethod_cellphone.png │ ├── factorymethod_naive.png │ ├── prototype_naive.png │ ├── prototype_shape.png │ ├── simplefactory_burger.png │ ├── simplefactory_naive.png │ ├── simplefactory_pizza.png │ ├── singleton.png │ ├── singleton_counter.png │ ├── singleton_decorated.png │ ├── singleton_lazy.png │ ├── singleton_metaclass.png │ └── singleton_thread.png └── utility.py └── tests ├── test_builder.py ├── test_factory.py ├── test_prototype.py └── test_singleton.py /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/README.md -------------------------------------------------------------------------------- /pydesignpatterns/behavioral/chain_of_responsibility_planet.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/behavioral/chain_of_responsibility_planet.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/abstractfactory_naive.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/abstractfactory_naive.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/abstractfactory_shape.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/abstractfactory_shape.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/builder_aircraft.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/builder_aircraft.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/builder_naive.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/builder_naive.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/factorymethod_car.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/factorymethod_car.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/factorymethod_cellphone.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/factorymethod_cellphone.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/factorymethod_naive.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/factorymethod_naive.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/prototype_naive.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/prototype_naive.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/prototype_shape.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/prototype_shape.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/simplefactory_burger.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/simplefactory_burger.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/simplefactory_naive.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/simplefactory_naive.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/simplefactory_pizza.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/simplefactory_pizza.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/singleton_counter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/singleton_counter.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/singleton_decorator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/singleton_decorator.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/singleton_lazy_instantiation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/singleton_lazy_instantiation.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/singleton_metaclass.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/singleton_metaclass.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/singleton_naive.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/singleton_naive.py -------------------------------------------------------------------------------- /pydesignpatterns/creational/singleton_thread.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/creational/singleton_thread.py -------------------------------------------------------------------------------- /pydesignpatterns/diagrams/abstractfactory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/diagrams/abstractfactory.png -------------------------------------------------------------------------------- /pydesignpatterns/diagrams/builder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/diagrams/builder.png -------------------------------------------------------------------------------- /pydesignpatterns/diagrams/chainofresponsibility.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/diagrams/chainofresponsibility.png -------------------------------------------------------------------------------- /pydesignpatterns/diagrams/factorymethod.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/diagrams/factorymethod.png -------------------------------------------------------------------------------- /pydesignpatterns/diagrams/prototype.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/diagrams/prototype.png -------------------------------------------------------------------------------- /pydesignpatterns/diagrams/simplefactory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/diagrams/simplefactory.png -------------------------------------------------------------------------------- /pydesignpatterns/diagrams/singleton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/diagrams/singleton.png -------------------------------------------------------------------------------- /pydesignpatterns/results/abstractfactory_naive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/abstractfactory_naive.png -------------------------------------------------------------------------------- /pydesignpatterns/results/abstractfactory_shape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/abstractfactory_shape.png -------------------------------------------------------------------------------- /pydesignpatterns/results/builder_aircraft.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/builder_aircraft.png -------------------------------------------------------------------------------- /pydesignpatterns/results/builder_naive.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/builder_naive.PNG -------------------------------------------------------------------------------- /pydesignpatterns/results/factorymethod_car.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/factorymethod_car.png -------------------------------------------------------------------------------- /pydesignpatterns/results/factorymethod_cellphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/factorymethod_cellphone.png -------------------------------------------------------------------------------- /pydesignpatterns/results/factorymethod_naive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/factorymethod_naive.png -------------------------------------------------------------------------------- /pydesignpatterns/results/prototype_naive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/prototype_naive.png -------------------------------------------------------------------------------- /pydesignpatterns/results/prototype_shape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/prototype_shape.png -------------------------------------------------------------------------------- /pydesignpatterns/results/simplefactory_burger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/simplefactory_burger.png -------------------------------------------------------------------------------- /pydesignpatterns/results/simplefactory_naive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/simplefactory_naive.png -------------------------------------------------------------------------------- /pydesignpatterns/results/simplefactory_pizza.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/simplefactory_pizza.png -------------------------------------------------------------------------------- /pydesignpatterns/results/singleton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/singleton.png -------------------------------------------------------------------------------- /pydesignpatterns/results/singleton_counter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/singleton_counter.png -------------------------------------------------------------------------------- /pydesignpatterns/results/singleton_decorated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/singleton_decorated.png -------------------------------------------------------------------------------- /pydesignpatterns/results/singleton_lazy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/singleton_lazy.png -------------------------------------------------------------------------------- /pydesignpatterns/results/singleton_metaclass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/singleton_metaclass.png -------------------------------------------------------------------------------- /pydesignpatterns/results/singleton_thread.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/results/singleton_thread.png -------------------------------------------------------------------------------- /pydesignpatterns/utility.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/pydesignpatterns/utility.py -------------------------------------------------------------------------------- /tests/test_builder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/tests/test_builder.py -------------------------------------------------------------------------------- /tests/test_factory.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/tests/test_factory.py -------------------------------------------------------------------------------- /tests/test_prototype.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/tests/test_prototype.py -------------------------------------------------------------------------------- /tests/test_singleton.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avidLearnerInProgress/design-patterns/HEAD/tests/test_singleton.py --------------------------------------------------------------------------------