在開發中,工廠模式得到了廣泛的應用,每個人都很容易掌握。許多初學者只使用它,不知道具體的含義。以下是對工廠模式的詳細分析。

一、工廠模式主要是為創建對象提供過渡接口,以便將創建對象的具體過程屏蔽隔離起來,達到提高靈活性的目的。
工廠模式分為三類:
1)簡單工廠模式:不利于產生系列產品;
2)工廠方法模式:又稱為多形性工廠;
3)抽象工廠模式:又稱為工具箱,產生產品族,但不利于產生新的產品;
這三種模式從上到下逐步抽象,并且更具一般性。
在簡單的工廠模式中,工廠類處于產品類實例調用的中心位置。它決定了哪個產品類別應該被實例化,就像一個交警站在車流中,決定釋放那個方向的車輛。
先來看看它的組成:
1) 工廠類角色:這是本模式的核心,含有一定的商業邏輯和判斷邏輯。它往往由一個具體類實現。
2) 抽象產品角色:它一般是具體產品繼承的父類或者實現的接口。由接口或者抽象類來實現。
3) 具體產品角色:工廠類所創建的對象就是此角色的實例。
工廠方法模式是簡單工廠模式的進一步抽象化和推廣,工廠方法模式里不再只由一個工廠類決定那一個產品類應當被實例化,這個決定被交給抽象工廠的子類去做。
來看下它的組成:
1) 抽象工廠角色: 這是工廠方法模式的核心,它與應用程序無關。是具體工廠角色必須實現的接口或者必須繼承的父類,它由抽象類或者接口來實現。
2) 具體工廠角色:它含有和具體業務邏輯有關的代碼,由應用程序調用以創建對應的具體產品的對象。
3) 抽象產品角色:它是具體產品繼承的父類或者是實現的接口。一般有抽象類或者接口來實現。
4) 具體產品角色:具體工廠角色所創建的對象就是此角色的實例。
客服1
客服2