プログラミング

「Decorator」パターンとは?サンプルを踏まえてわかりやすく解説!【Java】

「Decorator」パターンとは?サンプルを踏まえてわかりやすく解説!

重要度:★★★★★

 本記事ではGoFのデザインパターンのプログラムの構造に関するパターンの一つである「Decorator」パターンを解説します。このパターンを一言で説明するならば、「元となるオブジェクトに装飾(デコレート)を行うことで機能を拡張させる方法」と言えるでしょう。「Decorator」パターンを利用しない場合と、利用する場合の両方の例を挙げてわかりやすく解説します。

続きを読む

「Composite」パターンとは?サンプルを踏まえてわかりやすく解説!【Java】

composite

重要度:★★★★☆

 本記事ではGoFのデザインパターンのプログラムの構造に関するパターンの一つである「Composite」パターンを解説します。このパターンを一言で説明するならば、「入れ物のクラスと中身のクラスを、1つの抽象クラスでまとめて、それぞれのクラスから得られるオブジェクトを同一視できるようにする」と言えるでしょう。文章では想像がつきにくいと思いますので、例を踏まえながら解説していきます。

続きを読む

「Bridge」パターンとは?サンプルを踏まえてわかりやすく解説!【Java】

Bridge パターン

重要度:★★☆☆☆

 本記事ではGoFのデザインパターンのプログラムの構造に関するパターンの一つである「Bridge」パターンを解説します。このパターンを一言で説明するならば、「機能と実装を分離して、それぞれで拡張することが可能になるパターン」と言えるでしょう。文章では想像がつきにくいと思いますので、例を踏まえながら解説していきます。

続きを読む

「Adapter」パターンとは?サンプルを踏まえてわかりやすく解説!【Java】

Adapter パターン

重要度:★★★★★

 本記事ではGoFのデザインパターンのプログラムの構造に関するパターンの一つである「Adapter」パターンを解説します。このパターンを一言で説明するならば、「非互換性の2つのオブジェクトの間にアダプターを設置することで、関連性を持たせることが可能になるパターン」と言えるでしょう。文章では想像がつきにくいと思いますので、例を踏まえながら解説していきます。

続きを読む

「Singleton」パターンとは?サンプルを踏まえてわかりやすく解説!【Java】

Singletonパターン

重要度:★★★★★

 本記事ではGoFのデザインパターンのオブジェクトの生成に関するパターンの一つである「Singleton」パターンを解説します。このパターンを一言で説明するならば、「クラスのオブジェクトが1つしか生成されないことを保証する」と言えるでしょう。文章では想像がつきにくいと思いますので、例を踏まえながら解説していきます。

続きを読む

「Prototype」パターンとは?サンプルを踏まえてわかりやすく解説!【Java】

Prototype

重要度:★★☆☆☆

 本記事ではGoFのデザインパターンのオブジェクトの生成に関するパターンの一つである「Prototype」パターンを解説します。このパターンを一言で説明するならば、「クラスを元にオブジェクトを生成するのではなく、オブジェクトから別のオブジェクトを生成(コピー)するパターン」と言えるでしょう。文章では想像がつきにくいと思いますので、例を踏まえながら解説していきます。

続きを読む

「Factory Method」パターンとは?サンプルを踏まえてわかりやすく解説!【Java】

Factory Method

重要度:★★★★★

 本記事ではGoFのデザインパターンのオブジェクトの生成に関するパターンの一つである「Factory Method」パターンを解説します。このパターンを一言で説明するならば、「オブジェクトの作り方を親クラスで定め、具体的な処理をサブクラスで行うことで、オブジェクトの生成方法を柔軟に行うことができるパターン」と言えるでしょう。文章では想像がつきにくいと思いますので、例を踏まえながら解説していきます。

続きを読む

「Builder」パターンとは?サンプルを踏まえてわかりやすく解説!【Java】

builderパターン

重要度:★★★★☆

 本記事ではGoFのデザインパターンのオブジェクトの生成に関するパターンの一つである「Builder」パターンを解説します。このパターンを一言で説明するならば、「オブジェクトの生成過程を抽象化し、動的なオブジェクト生成を可能とするパターン」と言えるでしょう。文章では想像がつきにくいと思いますので、例を踏まえながら解説していきます。

続きを読む