色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

疑惑?改良? 從簡單工廠到工廠方法

  寫在前面

最近一段時間在研究有關設計模式方面的文章,拜讀了TerryLee以及呂震宇兩位老師所寫的設計模式方面的系列文章,收獲頗豐,也讓我對OOP,OOD有了新的理解和認識,不過在看到工廠方面的幾篇文章時,卻總有個地方想不通,望各位老師專家能替在下答疑解惑,以下是自己對工廠模式的一些理解以及提出的一種改良方案,不知道是否有人提出過類似的方案,如有雷同純屬巧合。有說得不對的地方還請批評指正。 

  從簡單工廠說起

嚴格來講簡單工廠并不屬于GOF的23個設計模式之一,但它之所以存在而被人們廣泛認知的原因,我想是由于它在一定程度上簡化了工廠方法(Factory Method)與抽象工廠(Abstract Factory)的模式,從而可以帶給新手對于工廠模式設計的精髓最直觀的認識,是不少人接觸工廠模式的奠基石,理解了簡單工廠的設計理念及實現方法再去理解相對復雜的工廠方法與抽象工廠有著水到渠成的效果。

先來看看簡單工廠的類關系圖:

簡單工廠一般以如下方式實現:

public class SimpleFactory
{
///
/// Get the right product base on the paoductcategory parameter.
///
///
///
public static IProduct CreateProduct(string productCategory)
{
switch (productCategory)
{
case "A":
return new ProductA();
case "B":
return new ProductB();
case "C":
return new ProductC();
default:
throw new Exception("Not a valid product category!");
return null;
}
}
}

NET技術疑惑?改良? 從簡單工廠到工廠方法,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 达尔| 广元市| 漳平市| 沾益县| 隆尧县| 松桃| 安仁县| 八宿县| 宜昌市| 依兰县| 怀来县| 河东区| 双柏县| 满城县| 北京市| 马鞍山市| 宜宾县| 纳雍县| 莱芜市| 黑山县| 锡林浩特市| 穆棱市| 漾濞| 大荔县| 黎城县| 泸定县| 五寨县| 中山市| 将乐县| 广德县| 筠连县| 寿光市| 洞头县| 怀集县| 汝州市| 东方市| 锡林郭勒盟| 和硕县| 弥渡县| 泽州县| 铅山县|