「Java/デザインパターン/デザインパターンとは」の版間の差分
提供: 初心者エンジニアの簡易メモ
(ページの作成:「Gof(gang of four)の23のパターン *Iteratorパターン *Adapterパターン クラスの独立性を維持したまま複数のクラスを接続するパターン...」) |
|||
行47: | 行47: | ||
*Interpreterパターン | *Interpreterパターン | ||
ドメイン特化言語のパーサ | ドメイン特化言語のパーサ | ||
+ | ==神クラス回避== | ||
+ | Template Methodパターンで、親クラスが、万能なクラスになっていて、子クラスで、カスタマイズする感じなのが、神クラス。 | ||
+ | |||
+ | 回避用法としてはStrategyパターンで、独立クラスを作り、呼び出すのが良い。 | ||
+ | |||
+ | 参考:http://www.aerith.net/design/TemplateMethod-j.html |
2024年7月4日 (木) 14:21時点における最新版
Gof(gang of four)の23のパターン
- Iteratorパターン
- Adapterパターン
クラスの独立性を維持したまま複数のクラスを接続するパターン。 継承 or 委譲する方法がある。
- Template Methodパターン
継承して実行する際に、大体の処理を親クラスに委ねるパターン。
- Factory Methodパターン
factoryでインスタンスを返す
- Singletonパターン
そのクラス内でのオブジェクトを1つに制限するパターン
- Prototypeパターン
自分自身をコピーして渡すパターン 細胞分裂な感じ
- Builderパターン
- Abstract Factoryパターン
- Bridgeパターン
- Strategyパターン
- Compositeパターン
再起処理に適したパターン。folderとfileで同じインターフェイスを使えるなど
- Decoratorパターン
あるクラスに動的にフィルターをかませるパターン
- Visitorパターン
- Chain of Responsibilityパターン
- Facadeパターン(ファサード
いろいろなクラスへ処理を委譲するようなパターン。自身は処理を他クラスへ渡すだけ コンポジションしただけ
- Mediatorパターン
仲裁人、調停者 クラスが5つあったとすると、4つのクラスが1つのクラスと相互に関連を持ち合っているパターン
- Observerパターン
- Mementoパターン
- Stateパターン
- Flyweightパターン
- Proxyパターン
- Commandパターン
- Interpreterパターン
ドメイン特化言語のパーサ
神クラス回避
Template Methodパターンで、親クラスが、万能なクラスになっていて、子クラスで、カスタマイズする感じなのが、神クラス。
回避用法としてはStrategyパターンで、独立クラスを作り、呼び出すのが良い。