聶永的博客

          記錄工作/學習的點點滴滴。

          Javascript EventBus(事件總線)模擬socket.io中事件處理

          socket.io客戶端對事件處理相當優(yōu)雅,和weboscket的有限的javascript接口差不多一致好看,但可以支持更多的自定義事件:

          使用了EventBus(事件總線)方式可以很好的處理事件訂閱者/事件的發(fā)布者解耦,發(fā)布者不知道訂閱者,訂閱者只需要自身注冊,等待通知便可。EventBus是一種簡單,高效,優(yōu)雅,良好的客戶端架構方式。嗯,還好,javascritp本身支持函數(shù)作為參數(shù)進行傳遞,要不還是很麻煩的。

          構建一個最簡單的EventBus javascript庫,也不難:

          簡單不到40行代碼,提供了事件訂閱,事件取消,事件廣播/發(fā)布等,雖簡單,但已經(jīng)滿足最簡單的頁面端EventBus模型,可以一窺全貌了。

          客戶端使用事件總線代碼:

          看著和socket.io的客戶端使用方式有所類似,但socket.io的處理方式復雜多了,并且多了一些內(nèi)置的事件,這里不過是簡化了很多。

          嗯,有空談一談JAVA是如何做到事件總線(EventBus)的。

          posted on 2012-08-24 23:04 nieyong 閱讀(3408) 評論(0)  編輯  收藏 所屬分類: socket.io

          公告

          所有文章皆為原創(chuàng),若轉載請標明出處,謝謝~

          新浪微博,歡迎關注:

          導航

          <2012年8月>
          2930311234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          統(tǒng)計

          常用鏈接

          留言簿(58)

          隨筆分類(130)

          隨筆檔案(151)

          個人收藏

          最新隨筆

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 临猗县| 平山县| 青冈县| 宜都市| 江西省| 广西| 攀枝花市| 靖州| 正蓝旗| 安宁市| 饶阳县| 安达市| 神木县| 陈巴尔虎旗| 介休市| 原平市| 商都县| 建平县| 广德县| 闽侯县| 沈阳市| 台中市| 河北省| 浪卡子县| 历史| 色达县| 凤山县| 渑池县| 廊坊市| 杂多县| 庆云县| 大宁县| 九龙坡区| 社旗县| 谢通门县| 清流县| 兴仁县| 板桥市| 鸡东县| 德庆县| 剑河县|