1樓:網友
專門定義乙個類來負責建立其他類的例項,被建立的例項通常都具有共同的父類。它又稱為靜態工廠方法模式,屬於類的建立型模式。
簡單工廠模式的uml類圖(見右圖)
簡單工廠模式的實質是由乙個工廠類根據傳入的引數,動態決定應該建立哪乙個產品類(這些產品類繼承自乙個父類或介面)的例項。
該模式中包含的角色及其職責。
工廠(creator)角色。
簡單工廠模式的核心,它負責實現建立所有例項的內部邏輯。工廠類可以被外界直接呼叫,建立所需的產品物件。
抽象(product)角色。
簡單工廠模式所建立的所有物件的父類,它負責描述所有例項所共有的公共介面。
具體產品(concrete product)角色。
簡單工廠模式的特點:
簡單工廠模式的建立目標,所有建立的物件都是充當這個角色的某個具體類的例項。
不難發現,簡單工廠模式的缺點也正體現在其工廠類上,由於工廠類集中了所有例項的建立邏輯,所以「高內聚」方面做的並不好。另外,當系統中的具體產品類不斷增多時,可能會出現要求工廠類也要做相應的修改,擴充套件性並不很好。
c#工廠模式和簡單工廠模式有什麼不同
2樓:網友
簡單工廠模式是類的建立模式,又叫做靜態工廠方法模式。就是由乙個工廠類根據傳入的參量決定建立出哪一種產品類的例項。一般涉及到三種角色(如下圖):
工廠類:擔任這個角色的是工廠方法模式的核心,含有與應用緊密相關的商業邏輯。工廠類在客戶端的直接呼叫下建立產品物件,它往往由乙個具體的類實現。
抽象產品角色:擔任這個角色的類是由工廠方法模式所建立的物件的父類,或她們共同擁有的介面。一般由介面或抽象類實現。
具體產品角色:工廠方法模式所建立的任何對。
象都是這個角色的例項,由具體類實現。
簡單工廠模式優缺點:
模式的核心是工廠類,這個類負責產品的建立,而客戶端可以免去產品建立的責任,這實現了責任的分割。但由於工廠類集中了所有產品建立邏輯的,如果不能正常工作的話會對系統造成很大的影響。如果增加新產品必須修改工廠角色的原始碼。
3樓:網友
多了兩個字···
抽象工廠和簡單抽象工廠基本原理都差不多。
簡單抽象工廠可能因為專案需求不同,然後在某一步驟就直接略過了比如有些是這樣的。
實體工廠、抽象產品、實體產品。
少了乙個抽象工廠,因為可能是他的專案不需要抽象工廠。
使用簡單工廠模式的優點是什麼?
4樓:追尋複製者
簡單工廠。
模式的優點:
1、工廠類含有必要的判斷邏輯,可以決定在什麼時候建立哪乙個產品類的例項,客戶端可以免除直接建立產品物件的責任,而僅僅「消費」產品;
2、簡單工廠模式通過這種做法實現了對責任的分割,它提供了專門的工廠類用於建立物件。
3、客戶端無須知道所建立的具體產品類的類名,只需要知道具體產品類所對應的引數即可,對於一些複雜的類名,通過簡單工廠模式可以減少使用者的記憶量。
4、通過引入配置檔案,可以在不修改任何客戶端**的情況下更換和增加新的具體產品類,在一定程度上提高了系統的靈活性。
5樓:網友
防止對資料的破壞,實現多型。
6樓:網友
可以動態建立物件~~
簡單工廠就是生產物件的工廠。
7樓:匿名使用者
這個問題首先要確定工廠的生產型別屬於那種,如是加工型的只要建立簡單的技術、生產、檢驗、倉管、財務、綜合等,如是自產型的則技術那塊要有產品開放設計人員,檢驗那塊也要有產品鑑定和測試。具體要視實際情況來定工廠的規模。
8樓:匿名使用者
只有品牌 沒有加工廠 其餘的外包 如皮爾卡丹。
j**a簡單工廠模式是什麼
9樓:網友
接著樓上寫。
public class animal{}public class cat extends animal{}public class dog extends animal{}public class fish extends animal{}/** 工廠類 */
public class animalfactory else if("dog".equals(name))else if("fish".equals(name))
return animal;}}
public class test}
10樓:網友
所謂簡單工廠模式, 就是將容易變化的地方, 考慮用乙個獨立class來進行創造實體(object)的過程。
目的: 合併創造實體的動作, 統一以變數處理之。 使得新增實體種類時, 可以不修改到已有程式。
舉例來說, 虛擬碼, 不可執行。
假設進行加減乘除運算, 分別使用不同的物件, 對變數a, b進行運算。
簡單工廠模式的寫法 (已宣告完加減乘除類別, 父類別operation)
class operationfactory
return oper;}}
使用者端寫法。
operation oper;
oper = "+");
result = ;
11樓:網友
簡單工廠模式就是把建立物件的方法封裝起來。如:
public class animal
public class tiger extends animal
簡單工廠模式與工廠方法模式的相同點和不同點??
12樓:冷已
工廠方法模式和簡單工廠模式在結構上的不同是很明顯的。工廠方法模式的核心是乙個抽象工廠類,而簡單工廠模式把核心放在乙個具體類上。工廠方法模式可以允許很多具體工廠類從抽象工廠類中將建立行為繼承下來,從而可以成為多個簡單工廠模式的綜合,進而推廣了簡單工廠模式。
工廠方法模式退化後可以變得很像簡單工廠模式。設想如果非常確定乙個系統只需要乙個具體工廠類,那麼就不妨把抽象工廠類合併到具體的工廠類中去。由於反正只有乙個具體工廠類,所以不妨將工廠方法改成為靜態方法,這時候就得到了簡單工廠模式。
簡單工廠模式用在什麼情況下?
13樓:網友
簡單工廠在你的工廠處理型別不會變動的非常頻繁,而又會有變動的可能性的時候使用,因為簡單工廠還是需要對**進行修改,所以沒有抽象工廠在實際應用中這麼廣泛。
14樓:網友
在做小專案的情況下,真正的專案,框架都比較龐大。
但是簡單工廠模式對你認識三層架構和提高對架構的認識很有用。
屬於基礎知識。
工廠模式,簡單工廠模式,抽象工廠模式三者有什麼區別
工廠方法模式 抽象工廠模式最大的區別在於 工廠方法模式 針對的是 一個產品等級結構。抽象工廠模式 針對 多個產品等級結構。工廠模式和抽象工廠模式的本質區別是什麼?可以這麼去理解,抽象工廠模式 這個稱呼中的 抽象 是一個動詞,即版對工廠方法模權式進行了抽象,就變成了抽象工廠模式,這麼理解後,就不難看出...
飛利浦電視怎麼進工廠模式,飛利浦智慧電視怎麼進recovery
有說明書,也可以打售後 飛利浦42pfl5609如何進工程模式?0 6 2 5 9 6 屏顯 2.按下任意一個數字鍵,進入工程選單。飛利浦電視進入工程模式方法 飛利浦和日立比較相似,所有機型進入工程選單的方法都比較統一。具體而言也不算複雜。1.在電視正常工作狀態下,直接連續按下遙控器上的 0 6 2...
大眾速騰後改導航工廠模式密碼是多少
這個如果你是本人,可以拿著購車憑證問廠家,因為每個車的密碼不一樣 大眾速騰原廠導航密碼是什麼?導航密碼為00000。在原車帶的導航說明書上面有顯示,可以參考一下。大眾速騰回簡介 速騰是一汽大眾於2006年4月答9日投放中國市場的一款新車型,其英文名稱為 sagitar 定位為 德系高效能轎車 優點缺...