C#でEventManager作った
作った
そこらじゅうにActionを置くのと、どこからどの機能がコールバック発火して飛んでるのかわからんのが地獄すぎたので作成
GameManagerとかのMono非継承のstaticインスタンスあたりでnewすればUnityでも使えるよ
gistec74e89d9f146dd88d1959f3538fc2de
いい結果
Actionの宣言の大幅な削減に成功(keyに置き換わった)
EventManagerを全て経由するので、コールバックフローがLogで可視化できる
keyとAddEventとRemoveEventをBaseクラスにロジックとして仕込むことでRemove忘れのnull参照回避ができる
それぞれのActionに対して参照を得る必要がなくなった(最高)
悪い結果
keyが多い
引数ないのでカスタマイズ性がない
他の人がこれ使わないでAction追加してキレた
まとめ
総合的に見ると結構使いやすい
オーバーヘッドとオブジェクト志向の関係上大型プロジェクトには向かない
おわり。