设计模式建议-从TXT

问题

我有一个应用程序,需要从 .txt 文件(先前提供并存在于本地存储中,无需提取)中加载大多数数据。假设我目前有3个模型:PersonRoleTask及其相关数据 Persons.txt Roles.txt Tasks.txt 。每个文件都有一个描述每个条目结构的标头(,例如id;名称;姓氏),. txt文件中的每一行代表一个条目(标头除外)。话虽如此,条目的格式可能错误(与标题不同),因此必须跳过这些条目。

目标

我想以某种方式创建一个通用数据加载器,该加载器将加载数据(逐行读取.txt,验证条目,修剪并转换为对象实例)并根据我传递给它们的类返回对象列表。例如,DataLoader<Person>仅用于加载人员数据。当前的解决方案对我命名的每个类都使用Singleton模式,并且还包含用于解析,验证和转换数据的逻辑。其原因主要是因为必须从应用程序的所有其他部分都可以访问数据,但是每个类都包含太多的逻辑,而其他大多数类仅依赖于这些Singleton,这在我看来并不好。

问题

在此用例中实现的最佳(最简洁)设计模式是什么?回答之前需要注意的几件事:

  1. 文件格式永远不会更改(始终为.txt)
  2. 将来可能会加载更多数据(例如Department Departments.txt 等)
admancy 回答:设计模式建议-从TXT

看看Strategy pattern

  

策略使算法与使用的客户端独立变化   它。 [...]将有关使用哪种算法的决定推迟到   运行时使调用代码更加灵活和可重用。

     

例如,对传入数据执行验证的类可能   使用策略模式来选择验证算法,具体取决于   数据类型,数据源,用户选择或其他   歧视因素。

本文链接:https://www.f2er.com/3135076.html

大家都在问