一個類別而言 應該只有一個引起他變化的原因
2022-07-04 許多不同的功能 修改同一個類別 同時影響該類別流程 debug到死
- 擴展開放 (Open for extension)
以運費而言 應該可以開放給使用者自定規則
- 更改封閉 (Closed for modifcation)
兩個類別溝通方式 依賴介面 使兩個類別不會過份偶合
父類做的到的事 子類一定也做的到 不行的話用繼承就有問題
2022-07-04 List list = new ArrayList();
簡單工廠模式
策略模式 每個地方的運費規則可能不一樣 可以利用這種模式
裝飾者模式 以衣服來講 可以決定要穿什麼 穿的順序 配合反射 或許可以達到 設定文件便可以加載外掛(格外功能)....
2021-09-26 動態新增log
代理模式 不直接對物件操作 而是經過代理去操作 希望操做對象可以方便替換 或是 改變取得他的方法可以使用
- 利用代理 讓servlet只有一個統一入口進行分流
外觀模式 為一個系統群建立一個統一操做的介面(代理) 使用者透過這個介面進行操做
適合用於樹狀