はじめに Swiftで普通にObserverパターンを作ろうとすると意外に面倒じゃないでしょうか。 KVOは何かやりたいことと違うし、NSNotificationCenterはTypeSafeじゃないし、通知名の文字列を管理するのも少し面倒です。 その点AndroidのEventBusは少し動的な要素が入りますが(Methodが使われていないとWarningが出るのを抑えないといけない)、なかなかバランスが良いと感じていて好きです。 Swiftでも同じ感じで作れないかなぁと試行錯誤していたら、まあまあ良い感じで作れたのでご紹介します。 SwiftEventBusという名前のpodが既にあったので、 EventCenter と名づけました。 EventCenterの良い所 任意のObject(class/struct/enum等)をEventオブジェクトとしてpostできる Event通知を