【发布时间】:2016-02-03 01:10:27
【问题描述】:
我有一个简单的任务是从不同结构的不同文件xml、rdf、txt中读取信息并将其放入一些POJO自定义对象(MyObject)中。所以我想知道使用哪种设计模式来使我的代码具有更好的设计。
我想到了这个问题,我认为我需要 Factory Patter 和 Iterator Pattern。 关于工厂传递文件:
ReaderFactory factory = new ReaderFactory("input.rdf");
//ReaderFactory factory = new ReaderFactory("input.xml");
Iterator<MyObject> iter = factory.getIterator();
因此工厂基于文件扩展名来选择要返回的迭代器的实现——读取 rdf、xml 或 txt。然后使用这个迭代器,我可以轻松地处理对象。添加添加新的文件扩展名在未来阅读。
【问题讨论】:
-
或者你可以使用一个简单的 if-then-else 来处理已知的扩展来完成工作:en.wikipedia.org/wiki/You_aren't_gonna_need_it
标签: java xml design-patterns rdf