.net core 3.1 23种设计模式----简单工厂模式
简单工厂模式:就是把创建对象交给一个工厂来处理,我们只要把想创建的对象交给工厂就行了
直接上案列
public interface IDB
{
public void CreateDb();
}
public class Mysql : IDB
{
public void CreateDb()
{
throw new NotImplementedException();
}
}
public class Oracle : IDB
{
public void CreateDb()
{
throw new NotImplementedException();
}
}
public class Sqlserver : IDB
{
public void CreateDb()
{
throw new NotImplementedException();
}
}
public enum DbType
{
oracle,
mysql,
sqlser
}
public class DbFactory
{
public static IDB CreateDb(DbType dbtype)
{
IDB idb = null;
switch (dbtype)
{
case DbType.oracle:
idb = new Oracle();
break;
case DbType.mysql:
idb = new Mysql();
break;
case DbType.sqlser:
idb = new Sqlserver();
break;
default:
throw new Exception("数据库选取错误");
}
return idb;
}
}
#region 简单工厂模式
IDB mysql = DbFactory.CreateDb(DbType.mysql);
#endregion
套路:把具体面向抽象,把对象交给工厂