GOFデザインパターンをPythonで - Iterator
GOFデザインパターンをPythonで - Observer
GOFデザインパターンをPythonで - Mediator
こちらの写経です。
Mediator
オブジェクト間で調整が必要な場合の取りまとめを行う。
オブジェクト同士がお互いを参照しあうことがないようにして、低結合を保つ。
GOFデザインパターンをPythonで - Facade
こちらの写経です。
Facade
複数のクラスやメソッドを呼び出す場合、クライアントが呼び出し順などを意識する必要のないよう、一連の処理をまとめて、一つのインターフェイスで提供する。
ここでは各TCクラスのメソッド呼び出しをTestRunnerのrunAll()でひとまとめにして一つのインターフェイスを提供している。
参考
15.Facadeパターン | TECHSCORE(テックスコア)
http://www.techscore.com/tech/DesignPattern/Facade.html/
GOFデザインパターンをPythonで - Decorator
こちらの写経です。
Decorator
あるクラスに機能を追加したい場合、DecoratorはDecorateeを引数にとるなどしてインターフェイスを同一視して機能拡張が可能。
参考
12. Decorator パターン | TECHSCORE(テックスコア)
http://www.techscore.com/tech/DesignPattern/Decorator.html/
GOFデザインパターンをPythonで - Strategy
こちらの写経です。
Strategy
状況によってアルゴリズムを変更する必要がある場合に有効。
if分の分岐内にアルゴリズムをかき分ける必要がなくなる。
各アルゴリズムをカプセル化しアルゴリズムを呼び出すインターフェイスのみ提供する。
クライアントはそのアルゴリズムの実装については知っている必要がない。
参考
10. Strategy パターン | TECHSCORE(テックスコアhttp://www.techscore.com/tech/DesignPattern/Strategy.html/
how is this Strategy Pattern written in Python? (the sample in Wikipedia) - Stack Overflow
http://stackoverflow.com/questions/963965/how-is-this-strategy-pattern-written-in-python-the-sample-in-wikipedia