A collection of design patterns and idioms in Python.

Jay Tyler 1878a5310b Minor pep8 changes. Most salient is that membership test should be 'x not in y' whereas 'not x in y' was being used. 11 éve
.gitignore 2476b4b5dd Remove __pycache__ and add __pycache__ to .gitignore 11 éve
3-tier.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
README.md e27509abdb Update README.md 11 éve
abstract_factory.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
adapter.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
append_output.sh ec8d735baa Don't repeat the ### OUTPUT ### line 11 éve
borg.py f61504c1bd Add output to bottom of scripts 11 éve
bridge.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
builder.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
catalog.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
chain.py 1878a5310b Minor pep8 changes. Most salient is that membership test should be 'x not in y' whereas 'not x in y' was being used. 11 éve
command.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
composite.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
decorator.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
facade.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
factory_method.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
flyweight.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
foo.txt 3511c20bf6 Added foo.txt for command.py script. 12 éve
graph_search.py 1878a5310b Minor pep8 changes. Most salient is that membership test should be 'x not in y' whereas 'not x in y' was being used. 11 éve
iterator.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
mediator.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
memento.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
mvc.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
null.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
observer.py 1878a5310b Minor pep8 changes. Most salient is that membership test should be 'x not in y' whereas 'not x in y' was being used. 11 éve
pool.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
prototype.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
proxy.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
publish_subscribe.py 1878a5310b Minor pep8 changes. Most salient is that membership test should be 'x not in y' whereas 'not x in y' was being used. 11 éve
state.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
strategy.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve
template.py f61504c1bd Add output to bottom of scripts 11 éve
visitor.py 5d794ceecb Your code is too weak for PEP8. You lack DISCIPLINE 11 éve

README.md

python-patterns

A collection of design patterns implemented (by other people) in python.

When an implementation is added or modified, be sure to update this file and rerun append_output.sh to keep the output comments at the bottom up to date.

Current Patterns:

  • 3-tier
  • abstract_factory
  • adapter
  • borg
  • bridge
  • builder
  • catalog
  • chain
  • command
  • composite
  • decorator
  • facade
  • factory_method
  • flyweight
  • graph_search
  • iterator
  • mediator
  • memento
  • mvc
  • null
  • observer
  • pool
  • prototype
  • proxy
  • publish_subscribe
  • state
  • strategy
  • template
  • visitor