👻

[デザインパターン]チートシート.Chain of Responsibility(責任の連鎖)

2023/02/15に公開

概要

今回はデザインパターンである「責任の連鎖」のコーディング練習をしました。
デザインパターンは人によって、または問題解決をしたい内容に応じて多種多様な書き方があるとは思いますが、
個人的な忘備録用にチートシートという形で投稿します。
※Unityで練習していたのでデザインパターンとは無関係なコードもあります。

アジェンダ

  1. このコードの出来る事
  2. 個人的なポイント
  3. チートシート(サンプルコード)

①このコードの出来る事

  • 自身のインスタンスのPlayメソッドを呼び出せる
  • 派生クラス間で一方向に繋がっているので、任意のIDのPlayメソッドを呼び出せる
  • 繋がっているクラスを一括して呼び出せる

②個人的なポイント

  • 責任の連鎖を実現させる為の「抽象クラス」がある。
  • 抽象クラスに連鎖させる為のクラス参照用のプロパティがある。
  • 派生クラスのコンストラクタから参照用の情報を渡す。※必要に応じてカスタマイズも
  • 派生クラスは一方向に処理を伝播させる事が出来る。

③チートシート(サンプルコード)

Discussion