亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

觀察者模式

GerryZhang JAVA開發工程師
難度中級
時長 1小時56分
學習人數
綜合評分9.53
113人評價 查看評價
9.7 內容實用
9.6 簡潔易懂
9.3 邏輯清晰
講得很詳細,學習了,盡量運用上去
視頻看不了 有問題
觀察者模式 觸發聯動
當一個抽象模型有兩個方面,其中一個方面的操作依賴于另一個方面的狀態變化
如果在更改一個對象的時候,需要同時連帶改變其他的對象,而且不知道究竟應該 有多少對象需要被連帶改變
當一個對象必須通知其他的對象,但是你又希望這個對象和其他的被通知的對象是松散耦合的
推模型 廣播通信
拉模型 目標自身通過update方法傳遞給觀察者
命名建議
目標接口 Subject
觀察者接口 Observer
觀察者接口的更新方法 update
觸發通知的時機先改數據后通知
觀察者模式調用順序 準備階段1創建目標對象2創建觀察者對象3相目標對象注冊觀察者對象
運行階段1改變目標對象的狀態1.1通知所有注冊地觀察者對象進行相應的處理1.1.1回調目標對象,獲取相應數據
通知的順序 觀察之間是平行的
MIC 的問題嗎?這節課聽起來有點累哦。聲音有點含糊~~
@Wi 如果像你說的對每個天氣內容作為一個訂閱者的話,那這樣的設計會不會使得訂閱者太多,造成結構的復雜性值得考慮
例如天氣的情況會有很多種
不單是 下雨,晴天
還有下雪 冰雹 高溫 臺風 等等等等的情況
@Wi 觀察者模式 是 一個訂閱者 對應多個觀察者, 訂閱者是一個服務,他可以是天氣預報,也可以是別的服務,
而在天氣預報這個服務內可以發送各種不同的天氣內容
如果像你那樣將每個天氣內容都作為一個訂閱者的話,一對一的進行觀察的話只是一對多的一種特例
如何使用需要根據具體的場景靈活使用
Wi
這樣的實現不是需要雙向依賴嘛,根本就有問題
假如是我來實現我會將每個天氣定義一個訂閱,再讓觀察者進行觀察
推薦大家看看《head first設計模式》,易入門!
這是head first設計模式的梗啊,擦!
幽默,風趣,好!
課程須知
學習本課程前,需要具備Java基礎,面向對象的程序設計思想。如果對這些知識不熟悉,可以學習《Java入門第一季》和《Java入門第二季》這兩門課程。
老師告訴你能學到什么?
1、理解觀察者模式的概念和結構 2、掌握如何將觀察者模式應用到項目中,解決項目實際問題 3、掌握觀察者模式的應用場景

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?

舉報

0/150
提交
取消