/// <summary> /// 工厂模式的通用实现 /// </summary> public void GeneralFactory() { Creator creator = new ConcreteCreator(); Product product = creator.CreateProduct <ConcreteProduct>(); product.Method(); product.Method2(); product = creator.CreateProduct <ConcreteProduct2>(); product.Method(); product.Method2(); }
protected override void Run() { Creator creator = new ConcreteCreator(); Product prouct = creator.CreateProduct(); prouct.Show(); }
public void I_Can_Create_MyProduct_By_ConcreteCreator() { var creator = new ConcreteCreator(); var product = creator.CreateProduct(); Assert.IsTrue(product.GetType() == typeof(MyProduct)); }
public static void Create() { //Il client dovra essere solo a conoscenza di una enum relativa ai prodotti //E' anche possibile implementare nuovi ConcreteCreator che implementno logiche diverse nella creazione ICreateProduct myCreator = new ConcreteCreator(ProductType.Prod2); IProduct myProduct = myCreator.CreateProduct(); myProduct.DoSomethingSpecific(); }
public static void ClientMain() { Creator creator = new ConcreteCreator(); Product product = creator.CreateProduct(); }