.NET簡談觀察者模式

作者: 南京.王清培  來源: 博客園  發布時間: 2011-06-05 19:24  閱讀: 2773 次  推薦: 4   原文鏈接   [收藏]  
摘要:觀察者模式想必搞程序開發的都聽說過,今天作者將來為大家也來簡單的總結一下他在程序開發過程中是怎么使用觀察者模式的,希望給大家帶來點新的想法。

  觀察者模式想必搞程序開發的都聽說過,今天我也來簡單的總結一下本人在程序開發過程中是怎么使用觀察者模式的;希望給大家帶來點新的想法,如果哪位高手看到了也不要嘲笑啊;呵呵,追求技術的人,始終都是為了技術而學技術,目的只有一個,一起追求技術的最高境界。

  觀察者模式是設計模式里經常被用到的一種,什么叫觀察者模式,字面理解就是一個或多個對象觀察某個對象,這種觀察是有目的的,當被觀察者發生某種事件時,能準確的反饋到外界,通知大家你發生了什么;尤其是在今天面向對象編程的不斷成熟,什么都講究抽象,將重復勞動省到最少,方法成員都以類為容器封裝;這是一種好的編程規則,就好比我們所生存的大自然壞境一樣,汽車與人都是獨立的生存個體,大家互不干擾,我不需要知道我存在的意義,存在的意義是對別人而言。

  進入主題,上面剛才講到了汽車與人,打個比方當我們乘坐公交車的時候,我并不認識路,我需要車到的時候通知乘客你到了哪個站,我們好下車;在我們做開發的時候經常會遇到這種情況,我要某個按鈕被鼠標點擊了之后彈出一個文本框出來,等等;繼續汽車與人的比方,當汽車到站后通過什么方式通知大家你到某某站了呢,這就涉及到汽車這么一個實體是否具有到站事件,如果沒有可能他永遠都不會聽,請看圖一:

  圖上是一個汽車和四個乘客實體圖,當汽車到達某個站的時候應該告訴乘客到了哪個站了,讓乘客判斷一下是否是自己要下的站,請看圖二:

  圖上是汽車到了站點1時通知乘客,并將到站的信息傳遞給乘客讓乘客判斷是否下車,如果某乘客要下車可以通知駕駛員我要下車,請看圖三:

  乘客判斷消息是否是自己要下的站,如果是發出消息給汽車駕駛員,我們這里把駕駛員和汽車當成一體的,由汽車為統稱;汽車接收到乘客的下車信息后打開車門讓乘客下車;我們只要把圖的信息落實到代碼上就OK了,請看代碼圖:

4
0
 
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()