我有一個有幾個屬性的類。一些屬性可以被其他類改變,但是一些屬性依賴於其他屬性。例如,假設我的類有三個屬性:A,B和C.A和B可以由系統中的其他類更改,C等於A + B.該類生成屬性更改通知所以,當A或B發生更改時,會爲已更改的屬性(A或B)生成通知,並會爲C生成通知。 我有三個選項(任何其它?)這個問題的最佳設計模式是什麼?
1-創建一個普通的C屬性(帶背襯場)和在A的設定器和B添加代碼以改變C.
2-創建一個普通的C屬性並收聽我班內屬於我班的財產變更通知,並在A或B變更時更改C.
3-對C創建一個計算屬性沒有setter但是吸氣劑是A + B,在A(和B)的設定器,我火兩者的性質變化(或B)和C
哪一個是一個更好的設計模式(在C#中)?我個人喜歡設計編號2.
觀察者模式是好的,在這種情況下,觀察者和Observable是同一個類。使用這種模式等於設計2,當類聽自己的財產變化通知,並因此觀察自己的變化。 – mans