在一个应用程序中,我有一个任务是创建将由第三方使用的文件。实际上,文件中有三种不同类型的内容:
是否有一种良好的设计模式可以确保文件名约定保持不变,并将文件生成拆分为每种文件类型的特定类?
是否有一种良好的方法可以重用生成文件的代码(而不在特定类中重复自己)?
以下是现有类的一部分:
- 员工卡列表,用于向第三方应用程序发送数据;
- 员工卡列表,用于收集生物特征;
- 数字区间。
FileGenerator
(泛型,我认为名称不好)的类,该类接收数据并创建具有某些名称约定(时钟代码、文件类型、日期和时间)的文件。是否有一种良好的设计模式可以确保文件名约定保持不变,并将文件生成拆分为每种文件类型的特定类?
是否有一种良好的方法可以重用生成文件的代码(而不在特定类中重复自己)?
以下是现有类的一部分:
class FileGenerator {
private List<String> contentOfFile;
private String fileName;
//I - include employees
//C - change employees
//R - remove employees
//B - collect biometry
//N - interval of numbers
private String option;
private void getFileName(){ ... } //this assure the file name convention
public void generate(){ ... } //this generate the file with content
}
我的想法:
- 创建一个抽象类来保存命名约定,以及将内容写入文件。
- 创建一个
工厂类
,它将了解所有类型的文件(这里使用工厂模式是个不错的选择)。 - 实现具体的类来定义将要写入哪些内容的文件类型。
getFileName
声明为concrete
和final
是确保命名规范的好方法吗? - user800014