どうもこんにちは、ピーコックアンダーソンです。
今回はデザインパターンの4つ目のコースということで、
以下の3つのパターンを収録してます。
・Stateパターン
・Decoratorパターン
・Bridgeパターン
【Stateパターン】
Stateパターンは、状態をクラスで表現するパターンです。
通常、オブジェクト指向はモノをクラス化するのですが、
このStateパターンでは、状態をクラス化するという考え方を行います。
状態クラスが次の状態に遷移したり、
その状態でやるべきことをやったりというような実装方法になっているので、
状態遷移などがある機器などの状態管理などには適したパターンです。
【Decoratorパターン】
Decoratorパターンは、
既存のクラスをラップして機能を拡張することができるパターンです。
ただラップするだけではなく、ラップした後も、
既存のクラスと同じインターフェースや抽象になるようにすることで、
元々の既存クラスと同じように扱うことができるというのが特徴です。
さらに自分自身が自分を呼び出すという再帰的な構造にもなってるので、
拡張機能というのは1つだけではなく、
2つ3つと、複数の機能を拡張するということもできます。
既存クラスを触ることなく、機能拡張したい場合には有効なパターンです。
【Bridgeパターン】
Bridgeパターンは、次元の異なる拡張がある場合、
例えば1つの種類が増えるだけで、
3つも4つもクラスが増えてしまうといった、
組み合わせによるクラス爆発が起きるような場合は、
Bridgeパターンを使うことで、
必要なクラスを組み合わせて、
全てのパターンの組み合わせを実現できるようになるので、
組み合わせによるクラス爆発が起きるような場合には、
Bridgeパターンでの対応というのが有効になります。
このような3つのパターンを
徹底的に掘り下げて解説してますので、
興味のある方はご覧になってみてください。
843
77
TAKE THIS COURSE