【发布时间】:2016-09-27 07:11:27
【问题描述】:
在我的 github 存储库中,我有类的层次结构,当然它们存在序列化/反序列化机制。
我通过 Externalizable 手动对它们进行序列化,并且我想取出所有生成值的代码,例如从这些类中序列化以保持所有简单和灵活(或者只是为了解决这个问题)
所以我基本上想做的是创建SerializationHelpers 和DeserializationHelpers 类,其中特定类的名称将是NameOfClassSerializationHelper。
这样的名字在最坏的情况下是 29 个字符,但我认为这太多了。是的,当然它可以更好地理解正在发生的事情,并且名称少于 50 个字符,用户将永远不会看到此类。
如您所见,我将Serialization 减少到Ser 和Deserialization 减少到Deser,但似乎会损害可读性。
例如,实现TrieSerializationHelper 的类将具有名称LinkedTrieSerializationHelper。
还有另一个麻烦:我不能将那些序列化/反序列化助手放到另一个包中,因为它们使用了一些包私有类(Node,正如你从WordGraphDeserHelper 的restoreRooot 方法中看到的那样)。
所以我完全不知道如何做得更好以及我必须做什么。提前致谢。
【问题讨论】:
-
Helper这个词只会制造噪音。为什么不Serializer和Deserializer? -
@plalx 因为他们不直接进行序列化
-
好的,它有什么作用?
-
它们生成的值必须被序列化,并在
DeserializationHelper的情况下通过这些值恢复Trie的根Node -
为什么不能是通用代码?这些助手生成的输出类型是什么?
标签: java architecture naming-conventions