工廠模式(Factory) 依賴倒置原則(Dependency Inversion Principle):依賴抽象,不要依賴具體類。 要點 1. 簡單工廠 2. 工廠方法模式 ——定義了一個創建對象的介面,但由子類決定要實例化的類是哪一個。工廠方法讓類把實例化推遲到子類。 3. 抽象工廠模式 ——提 ...
工廠模式(Factory)
- 依賴倒置原則(Dependency Inversion Principle):依賴抽象,不要依賴具體類。
- 變數不可以持有具體類的引用。(如果使用new,就會持有具體類的引用。可以改用工廠來避開這樣的做法。)
- 不要讓類派生自具體類。(如果派生自具體類,就會依賴具體類。請派生自一個抽象(介面或抽象類))
- 不要覆蓋類中已實現的方法。
- 要點
- 所有的工廠都是用來封裝對象的創建
- 工廠方法使用繼承:把對象的創建委托給子類,子類實現工廠方法來創建對象。
- 抽象工廠使用對象組合:對象的創建被實現在工廠介面所暴露出來的方法中。
- 所有工廠模式都通過減少應用程式和具體類之間的依賴促進松耦合。
1. 簡單工廠
2. 工廠方法模式
——定義了一個創建對象的介面,但由子類決定要實例化的類是哪一個。工廠方法讓類把實例化推遲到子類。
3. 抽象工廠模式
——提供一個介面,用於創建相關或依賴對象的家族,而不需要明確指定具體類。