java

JavaでのMediatorパターンの実装方法と使用例

Mediatorパターンはデザインパターンの一つで、複雑に絡み合ったオブジェクト間の関係をMediator(調停者)が整理するパターンです。 例えば、10個のオブジェクト間で連携を取る必要がある場合、オブジェクト同士で直接連携を取ると、「自...
java

JavaでのChain of Responsibilityパターンの実装方法と使用例

Chain of Responsibilityパターンとは、その名の通り責任が連鎖する構造を表すためのパターンです。 あるオブジェクトで解決できない問題を別のオブジェクトにたらい回すようにするのがツボで、そうすることで解決できなかった場合の...
java

JavaでのVisitorパターンの実装方法と使用例

Visitorパターンは、Compositeパターンを派生させたパターンであり、入れ物・中身の構造に対して複数の処理を記述する必要がある時に適用します。 Entryクラスとは別にVisitorクラスを作成し、Visitorクラスの方に処理を...
java

JavaでのDecoratorパターンの実装方法と使用例

Decoratorパターンは、その名の通りオブジェクトに次々とデコレート(飾りつけ)をし、機能を追加していくパターンです。 Compositeパターンと同じように再帰的なクラス構成とすることで、冗長性を排除します。 今回は、じゃんけんの手を...
java

JavaでのCompositeパターンの実装方法と使用例

Compositeパターンは、入れ物のクラスと中身のクラスを1つの抽象クラスでまとめ、同一視できるようにするパターンです。 このパターンを取り入れることで、クラスを使う側から見て入れ物のクラスなのか中身のクラスなのかを意識する必要がなくなり...