- 實驗內容
某系統日誌記錄器要求支持多種日誌記錄方式,如文件記錄、數據庫記錄等、且用戶可以根據要求動態選擇日誌記錄方式,現使用工廠方法模式設計該系統
- 設計類圖
- 具體代碼
- 抽象接口
- 具體工廠
- 具體產品
- 測試類
- 實驗結果
- 分析、總結
工廠方法模式克服了簡單工廠違背開放-封閉原則的缺點,又保持了封裝對象創建過程的優點。層層分工
在工廠方法模式中,核心的工廠類不再負責對相應子類的創建,而是聲明一個子工廠類必須實現的接口,具體的實例化工作由子工廠類去做。這樣整個體系並沒有對修改開放,而是隻對擴展開放,符合開放-封閉原則。
我們如果想要加功能的話,就不是像簡單工廠一樣要修改工廠類了,而是把修改放到客戶端,對於工廠類和運算類的改變就只是擴展。