创建太多类或具有一些无模式数据结构(如字典)?

时间:2014-08-25 14:49:47

标签: java design-patterns

我必须使用在文档(xml / json)中定义的50种不同的自定义数据类型(/类),它们只有字段,没有方法,也许还有强大的验证。 我的问题是我应该继续创建(/生成)50个类或使用一些通用数据结构(如HashMap< String,Object>)?

更新:我担心的是,如果我使用class geneartion,那么我的代码库可能会增加很多 如果采用无模式方式,我的数据完整性可能会受到影响,因此哪一个是较小的邪恶。

1 个答案:

答案 0 :(得分:2)

除非它只是荒谬,否则更多的代码通常会更可原谅。有几个不同的原因:

如果你在正确的位置给他们基类,你可以两种方式,因为你的处理代码可以容纳基类,并且可以有锚点来提取,验证或清理以不同格式存储的信息。当然可以共享一些处理。

如果绝对一切都属于基类,你可以毫不费力地重构子类。另一方面,如果你开始采用无定形方式,将特殊情况重新收集到不同的类中更有可能出错。

如果额外的数量没有为读者阐明逻辑,那么过大的代码就会很糟糕。如果他们构成了人们想到的单位,我会上课。

此外,实际功能比格式甚至可读性更重要。因此,如果风险是数据完整性与代码膨胀,请保护内容,而不是表单。