色尼玛亚洲综合影院,亚洲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技術疑惑?改良? 從簡單工廠到工廠方法,轉載需保留來源!

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

主站蜘蛛池模板: 垫江县| 双流县| 合江县| 宁远县| 吴江市| 澄城县| 洛南县| 土默特左旗| 临桂县| 孝感市| 揭西县| 富民县| 天津市| 麻江县| 宜丰县| 屏边| 鹿泉市| 楚雄市| 赣榆县| 永福县| 吉隆县| 朝阳区| 铁岭市| 满洲里市| 舞阳县| 华亭县| 鹤峰县| 卢湾区| 鹤岗市| 台南县| 女性| 额敏县| 昂仁县| 监利县| 黄浦区| 延吉市| 泾阳县| 会泽县| 镇宁| 永和县| 蓬莱市|