首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

設計模式 C#:抽象工廠模式完整實作 - 具體工廠與產品類別 (下)

     編輯:關於C語言

抽象工廠模式 C# 實作最後部分:兩個具體工廠與對應產品類別。

SqlMessageFactory

public class SqlMessageFactory : AbstractMessageFactory {
    public override AbstractMessageModel CreateMessageModel() 
        => new SqlMessageModel();
    public override AbstractMessage CreateMessage() 
        => new SqlMessage();
}

XMLMessageFactory

public class XMLMessageFactory : AbstractMessageFactory {
    public override AbstractMessageModel CreateMessageModel() 
        => new XMLMessageModel();
    public override AbstractMessage CreateMessage() 
        => new XMLMessage();
}

產品類別

public class SqlMessage : AbstractMessage {
    public override string Insert(AbstractMessageModel amm)
        => $"Sql方式插入Message。帳號:{amm.UserId};內容:{amm.Message};時間:{amm.PublishTime}";
}

public class XMLMessage : AbstractMessage {
    public override string Insert(AbstractMessageModel amm)
        => $"XML方式插入Message。帳號:{amm.UserId};內容:{amm.Message};時間:{amm.PublishTime}";
}

客戶端僅依賴抽象工廠與抽象產品介面,具體實作可隨配置切換,符合依賴倒置原則。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved