C# 設計パターン --- シンプルなファクトリ パターン

シンプルなファクトリーパターン

単純なファクトリ パターンは、他のクラスのインスタンスの作成を担当するクラスを定義し、作成されたインスタンスには通常、共通の親クラスがあります。単純なファクトリ パターンでインスタンスを作成するために使用されるメソッドは静的メソッド (静的ファクトリ メソッド (静的ファクトリ メソッド) パターンとも呼ばれる) であるため、単純なファクトリ パターンは作成パターンです。

using System;
namespace ConsoleApplication
{
    //一般每个接口或类都写在单独的.cs文件中
    //本示例为了执行查看方便才写在一起
    public interface Database
    {
        void Delete();
        void Insert();
    }
    //Sqlserver的增删
    public class Sqlserver : Database
    {
        public void Delete()
        {
            Console.WriteLine("delete data from sqlserver");
        }
        public void Insert()
        {
            Console.WriteLine("insert data to sqlserver");
        }
    }
    //Mysql的增删
    public class Mysql : Database
    {
        public void Delete()
        {
            Console.WriteLine("delete data from Mysql");
        }
        public void Insert()
        {
            Console.WriteLine("insert data to Mysql");
        }
    }
    public static class IFactory
    {
        //根据需求创建
        public static Database CreateDatabase(string dbType)
        {
            Database db = null;
            switch (dbType)
            {
                case "Sqlserver":
                    db = new Sqlserver();
                    break;
                case "Mysql":
                    db = new Mysql();
                    break;
                default:
                    break;
            }
            return db;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Database db1 = IFactory.CreateDatabase("Sqlserver");
            db1.Delete();
            db1.Insert();
            Database db2 = IFactory.CreateDatabase("Mysql");
            db2.Delete();
            db2.Insert();
            Console.ReadKey();
            Console.ReadKey();
        }
    }
}

 

おすすめ

転載: blog.csdn.net/lwf3115841/article/details/132126476