【问题标题】:Design pattern to (de)serialize data from用于(反)序列化数据的设计模式
【发布时间】:2014-10-19 17:13:25
【问题描述】:

假设我的文件中有一些 XML、JSON 或 YAML 格式的数据。所有文档都具有相同的逻辑结构。在简单的情况下:所有文件都有根元素属性版本。

我想创建一个可以从/向这种格式的文件读取和写入数据的类:

 enum FileFormat {JSON, XML, YAML};

 class File {
    FileFormat FileFormat { get; } // We cannot change file format
    int Version { get; set; } // We can read/change root attribute Version 
    Load(string fileName, FileFormat fileFormat); // We can load from JSON/XML/YAML formats
    Save (string fileName); // We can save changed  in the same format as we read
}

我应该在加载/保存中使用哪种设计模式来选择正确的序列化器/反序列化器?

【问题讨论】:

    标签: xml json design-patterns json.net yaml


    【解决方案1】:

    这是builder pattern 的教科书场景。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-09
      • 1970-01-01
      • 1970-01-01
      • 2015-06-01
      • 2010-10-17
      相关资源
      最近更新 更多