カテゴリー:デザインパターン
-
「Proxy(プロキシ)」ってどんなパターン? 既存クラスのメソッドが呼ばれた際に、一旦中間的な処理を実行してから渡すパターンです。 メリット あるメソッドに、中間的な処理を加えることができます。 中間的な処理の例としては下記で…
-
「Flyweight(フライウェイト)」ってどんなパターン? 小さくて軽いオブジェクトをたくさん作りたい場合に有効なパターンです。 メリット オブジェクトの生成や、保持に必要なトータルの負荷(メモリ)を下げることができます。 実…
-
「Facade(ファザード)」ってどんなパターン? 既存のクラスを組み合わせて使う手順を外出しすることができます。 メリット よく使うクラスのメソッドのうち、汎用性の高い物を、publicにして開発者間で共有したりすることで、開発スピ…
-
「Decorator(デコレータ)」ってどんなパターン? 既存クラスのインターフェイスを変更せずに、機能を追加したい場合に使えるパターンです。 メリット クラスを継承するよりも、自由度が高い方法で、機能を追加することができます。 ど…
-
「Adapter」ってどんなパターン? 既存のクラスに、別のインターフェイス(メソッド)を持たせたい場合に使えます。 例えば、「クラスA」と、「クラスAに似ているが微妙に異なるクラスB」があり、クラスBをクラスAと同じプログラムの中で、…
-
「Singleton」ってどんなパターン? あるクラスのオブジェクトを一つだけ作り、各クラスで共有したい場合に使うパターンです。 メリット 「システムの起動から、終了まで、そのクラスのオブジェクトが一つしか存在しないこと」を保証できま…
-
Builderパターンってどんなパターン? 複雑な手順でオブジェクトを生成する場合に使えるパターンになります。 メリット 通常のコンストラクタの初期化処理では出来ない、複雑な初期化処理ができます。 例えば、数多くの初期化パラメー…
-
Abstract Factoryってどんなパターン? 組み合わせて使う多数のサブクラス群を、まとめて交換できるようにするパターンです。 メリット? 実行するメインプログラムを修正することなく、サブクラス群を環境変化に伴って交換すること…
-
Factory Methodってどんなパターン? 複数に分割したクラスのインスタンスを生成する際は、それぞれコンストラクタを呼んで生成するのではなく、「片方のインスタンスは生成するが、もう片方のインスタンスは既に作成済みの片方のインスタン…
-
【Java】デザインパターンやクラス設計の基本
04.22
デザインパターンとは? 過去に、うまくいったクラス設計のノウハウを集めたパターン集のことです。 デザインパターンのメリット クラス設計時間を短縮できる。 システムを作る際も、いわば創作物に当たり、クラスの構造を考えたりするのには時間…