简单工厂模式算不上实际意义上的设计模式,但是我们写程序时候不自觉地就用上了,这是为什么呢?
有人说,不好回答,傻呀你,不就是因为她简单吗?
接上篇,说说简单工厂模式。
闪电晚上在维吾尔族餐馆吃了顿炒面片,顺便呢,点了盘花生和毛豆的拼盘。
回来之后呢,就有了以上的UML图和以下闪电写的代码了。
俺们县啊,可是个农业大县,但是又出不了优质主粮,农民呢,就想办法种些农副产品,一来自己可以改善一下伙食,二来呢,如果产量好的话,也能出售个好价钱。
农民甲有一些沃土地,他觉得种花生豆将来会高产。
农民乙呢,有一些普通的土地,他觉得啊,种毛豆应该不会亏本。
农民甲和农民乙都联系了本地的经销商(Factory),经销商那里卖的花生和毛豆都有啊,只要告诉他你需要什么就给你提供啊!
于是乎……
public abstract class Legume
{
public virtual string GetFruit()
public class Factory<T>
{
public static Legume CreateLegume()
{
return new T();
}
}
客户机珵序:
static void Main(string[] args)
{
string strResult1 = "";
string strResult2 = "";
Legume oper1 = Factory<Pignut>.CreateLegume();
Legume oper2 = Factory<Soybean>.CreateLegume();
strResult1 = oper1.GetFruit();
strResult2 = oper2.GetFruit();
Console.WriteLine("农民甲结果湜:" + strResult1);
Console.WriteLine("农民乙结果是:" + strResult2);
Console.ReadLine();
}