TDD - 在哪里检查文本文件格式是否正确?

TDD - Where to check if text file format is correct?

我正在做一个项目,需要读取指定格式的文本文件(第一行的变量声明,下一行的赋值),然后将信息保存在 class "A".

我不知道应该在哪里检查文本文件的格式是否正确:在域包中,还是在 BusinessLogic 包中。例如:第一行永远不能为空。我应该在 class "A" 或逻辑包中检查这个,在 class 中充当 UI 和域之间的中介吗?

有很多方法可以解决这个问题。

你的 class A 本身有 "meaning" 吗?换句话说:它的存在只是为了表示来自此类文件的信息,还是这些文件只是一个 create/populate A实例的方式?

如果 A 真的独立于这些文件,那么解析/验证代码不应该进入 A 本身。那么让该代码位于它自己的特定服务 class 中可能是有意义的,例如 AFileReader 或类似的东西。这也坚持单一责任原则。

如果就此类文件而言 A 只能是 "thought",那么您可能希望在同一个文件中包含 reading/validation 代码,但同样:可能在其自己的文件中class。 A 的职责是表示该数据。