facebook twitter hatena line email

「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パターンで、独立クラスを作り、呼び出すのが良い。

参考:http://www.aerith.net/design/TemplateMethod-j.html