事件觀察者的應(yīng)用

事件觀察者又可以叫事件委托、訂閱模式,目的是為了解偶,定義了一種一對(duì)多的關(guān)系,當(dāng)事件變化時(shí)通知與此事件依賴(lài)的對(duì)象,并做出相應(yīng)的處理。應(yīng)用時(shí)非常廣的,我在做游戲中時(shí)必定用到的,是最最基礎(chǔ)的模塊,數(shù)據(jù)更新、玩家動(dòng)作觸發(fā)、幀頻刷新、服務(wù)器消息響應(yīng)、界面與邏輯分離、狀態(tài)變遷等等。我在理解觀察者模式的基礎(chǔ)上作出了一些改動(dòng),使用起來(lái)會(huì)更方便與快捷。

事件觀察者

大學(xué)生就業(yè)培訓(xùn),高中生培訓(xùn),在職人員轉(zhuǎn)行培訓(xùn),企業(yè)團(tuán)訓(xùn)

首先,事件觀察者監(jiān)聽(tīng)事件,然后當(dāng)收到事件觸發(fā)時(shí),調(diào)用事件響應(yīng)函數(shù),完成一次事件的變遷。
那么,事件觀察者內(nèi)部會(huì)存在一個(gè)事件列表來(lái)維護(hù)事件綁定,即為 eventMap ,其中key是唯一值是事件ID,通過(guò)區(qū)分事件ID來(lái)劃分事件監(jiān)聽(tīng)函數(shù)。

  1. 一個(gè)事件ID對(duì)應(yīng)多個(gè)響應(yīng)事件

  2. 事件ID不可重復(fù)

  3. 同一個(gè)事件ID的事件響應(yīng)函數(shù)不可重復(fù)。

網(wǎng)友評(píng)論