C# 工厂模式 望大家 赐教
以前写代码 只考虑 方法实行,这几天开始研究模式,第一个模式 是工厂模式,下面是一个小例子,请大家看看如何改进,能够使它达到更大的可扩展性和尽量少的修改量。
代码如下:
using System;
using System.Collections.Generic;
using System.Text;
//工厂模式:new的多态跟封装,(抽象工厂,具体工厂,抽象产品,具体产品)
namespace FactoryText
{
abstract class Produce
{
public abstract void productName();
}
//具体产品
class productA : Produce
{
public override void productName()
{
Console.WriteLine("product A");
}
}
class productB : Produce
{
public override void productName()
{
Console.WriteLine("product B");
}
}
//抽象工厂
abstract class abstructFactory
{
public abstract Produce produce(string produceType);
}
//具体工厂
class Factory1 : abstructFactory
{
public override Produce produce(string produceType)
{
Produce result = null;
try
{
Type type = Type.GetType(produceType,true);
result = (Produce) Activator.CreateInstance(type);
}
catch (TypeLoadException e)
{
Console.WriteLine("找不到你的类型:"+e.Message);
}
return result;
}
}
class Program
{
static void Main(string[] args)
{
abstructFactory text = new Factory1();
text.produce("FactoryText.productA").produc