近日在 閱讀sPRingMVC源碼時發(fā)現(xiàn)中大量的應用了觀察者模式,發(fā)現(xiàn)自己仍然處于一知半解的狀態(tài), 故有此博文,加強對該模式的理解。
場景: 在微信應用使用中,我們經(jīng)常會訂閱些公眾號,而公眾號則自動的向訂閱者提供服務,發(fā)送消息,當我們取消訂閱時,公眾號便不再推送。這個過程即使典型的觀察者模式。而通常我們將公眾號稱為主題對象,而訂閱者則稱為觀察者對象。主題對象管理者所有的觀察者對象,當主題對象內部發(fā)生改變時,新的數(shù)據(jù)將以某種形式發(fā)送到每個觀察者對象。一個主題對象對應著多個觀察者對象。
實現(xiàn)方式: 針對這個應用場景我們可以想到的實現(xiàn)可能如下:
新聞熱點
疑難解答