概要
Python におけるデザインパターンの記録です.
コンテンツ | 個人的な使用頻度 | 個人的な感想 |
---|---|---|
Factory Method (継承)の採用可否基準 | 高 | ライブラリ(パッケージ)にも Factory Method を採用したものが多く、真似をしやすい. |
Strategy Pattern (移譲) の採用可否基準と実装例 | 高 | C/C++の関数ポインタの感覚で使っている. |
Factory (継承)と Strategy (移譲)の混合例 | 高 | 実践では Singleton に次いで使用頻度が高い. |
State Pattern の実践記録 | 低 | 複雑な分岐を求められるシステムで積極採用している. このとき「Transitions」パッケージの力を借りている. |
Template Method (継承)の採用可否基準 | 中 | リファクタリングを行ったときに採用することが多い. 新規設計で採用することは難しくてできない. |
Singleton の使用例 | 高 | DB を導入するほどでも無いシステムで使用することが多い. |
Observer Pattern の使用例 | 低 | 組込みC++でログを収集するシステムで実践したことはあるが、Python では無い. |
Facade | 高 | 手抜きしやすいこともあり使用頻度が高い. C言語の ioctl() の API を作る感覚である. |