我試圖讓我的周圍觀察者模式頭,並在概念上 - 我得到它,它似乎是很多東西真的有益?觀察者模式 - 奇數據點與大型集
但是..在所有的例子中,我正在閱讀 - 看起來所有的例子都使用「單一」數據點,而單個類來管理這個數據點,所以當然如果'x'發生變化,通知其他一些(註冊的) class ...
當一個類中有多個方法可能會改變多個數據點時,會做什麼? - 「觀察員」應該註冊一個特定的「方法」 - 或者添加一個'onchange'方法 - 例如,用一些正常的CRUD方法'insert','update' ,'刪除'...這些方法中的每一個'改變'數據。
如果我有2個觀察者 - 一個「日誌記錄」對象,並且一個UI對象綁定到用戶名......顯然,日誌記錄對象會希望知道任何數據更改,而UI對象可能只關心用戶名。
如何處理這些多個數據點 - 您(希望)不會分別編寫代碼來分別更新每個數據點 - 並註冊每個「監視」!那'太荒謬了。
爲了參數的緣故 - 假設用戶的'屬性'是100個數據點 - (第一,中間,最後,dob,用戶名,電子郵件,密碼,lastlogin等等)和「updateUser」只改變最後一次登錄......'通知'是否處理決定不提醒用戶界面的條件邏輯 - 或者提醒用戶界面(因爲它是'用戶'的觀察者 - 而UI對象有一個處理通知的方法,而且它的條件邏輯來決定「lastlogin」不感興趣,它????