rrbox / GameWidget

A simple UI layout tools for SpriteKit
MIT License
3 stars 0 forks source link

それまでの Notification 処理を新しい API に対応する #77

Closed rrbox closed 1 year ago

rrbox commented 1 year ago

変更方法としては、NotificationCenter を操作する型を一つに絞り、置き換えていく形となります。新しい型定義となるため、命名も考える必要があります。

デザインパターンはこれまでと同じシングルインスタンスパターンを利用します。activate() で起動状態にし、deactivate() の実行または、他のインスタンスの activate() により静止状態にします。

データ送信側は、シングルインスタンスを操作します。

HogeSystem.activated.postHogehoge()

データ受信側は、あらかじめインスタンスに登録しておきます。

let system = hogeSystem()
let receiver = FugaObserver()
system.addObserver(receiver)
rrbox commented 1 year ago

80 により、activated のシングルインスタンスを利用した API を廃止しました。データ(イベント)送信側は weak var などでインスタンスの参照を保持し、参照を介して送信を行います.。

rrbox commented 1 year ago

コミットしました。

https://github.com/rrbox/GameWidget/pull/79/commits/4252949f8b677969b2eb7154e4f5fb88db362e64 https://github.com/rrbox/GameWidget/pull/79/commits/0b677942c0325ac96398fec719c5175fd55ea11d