![Java のデザインパターン [パート 1] - 1](https://cdn.codegym.cc/images/article/241ebd47-d289-41b2-bcbe-d8722463fd43/800.jpeg)
パターンの種類:
- 創造的な
- 構造的な
- 行動的な
創造性:
-
シングルトン — クラスの作成を単一のインスタンスに制限し、その単一のインスタンスへのアクセスを提供します。
-
ファクトリ — 複数のサブクラスを持つスーパークラスがあり、入力に基づいてサブクラスを返す必要がある場合に使用されます。
-
抽象ファクトリー — スーパーファクトリーを使用してファクトリーを作成し、それを使用してオブジェクトを作成します。
-
ビルダー — 単純なオブジェクトを使用して複雑なオブジェクトを作成するために使用されます。小さな単純なオブジェクトから徐々に大きなオブジェクトを作成します。
-
プロトタイプ — 複製オブジェクトを作成する際のパフォーマンスの向上に役立ちます。新しいオブジェクトを作成する代わりに、既存のオブジェクトのクローンを作成して返します。
構造:
-
アダプター — 2 つの互換性のないオブジェクト間のコンバーター。アダプター パターンを使用して、互換性のない 2 つのインターフェイスを組み合わせることができます。
-
複合 — 1 つのクラスを使用してツリー構造を表します。
-
プロキシ — 別のクラスの機能を提供します。
-
Flyweight — 類似したオブジェクトを多数作成するのではなく、オブジェクトを再利用します。
-
ファサード — クライアントにシンプルなインターフェイスを提供し、クライアントはそのインターフェイスを使用してシステムと対話します。
-
ブリッジ — 特定のクラスをインターフェイスを実装するクラスから独立させます。
-
デコレータ — 既存のオブジェクトの構造に縛られることなく、新しい機能を追加します。
行動:
-
テンプレート メソッド — 基本的なアルゴリズムを定義し、子孫が全体の構造を変更せずにアルゴリズムの一部のステップをオーバーライドできるようにします。
-
Mediator — 異なるクラス間のすべての通信を処理する中間クラスを提供します。
-
責任の連鎖 — リクエストの送信者と受信者間の厳密な依存関係を回避できます。さらに、リクエストは複数のオブジェクトで処理できます。
-
オブザーバー — 1 つのオブジェクトが他のオブジェクトで発生するイベントを監視し、応答できるようにします。
-
戦略 — 実行時に戦略 (アルゴリズム) を変更できます。
-
コマンド — 特定のアクションを実行するためのメソッドを宣言するインターフェイス。
-
状態 — オブジェクトがその状態に応じて動作を変更できるようにします。
-
訪問者 — 関連オブジェクトのグループに対する操作を簡素化するために使用されます。
-
インタプリタ — 問題領域内の単純な言語の文法を定義します。
-
イテレータ — 基礎となる形式を知らなくても、コレクションの要素に順次アクセスします。
-
Memento — オブジェクトの状態を保存するために使用されます。この状態は後で復元できます。
さらに読む: |
---|
GO TO FULL VERSION