在具有某种类型的反射/自定义的语言中,一个巨大的好处是可以从各种来源自动构造对象。
例如,在Java中,我可以使用相同的对象来持久化数据库(使用Hibernate)、序列化到XML (使用JAXB)和序列化到JSON (json-lib)。您可以在Ruby和Python中执行相同的操作,通常还需要遵循一些简单的Java属性或注释规则。
因此我不需要太多的“域转移对象”。我可以专注于我正在工作的领域。
在像Haskell和Ocaml这样非常严格的FP中,这似乎是不可能的。尤其是Haskell。我看到的唯一一件事就是做一些预处理或元编程(ocaml)。你必须从下往上做所有的转换,这是不是已经被接受了?
换句话说,要将haskell中的数据类型转换为JSON/XML/DB Row对象,再转换回数据对象,需要做大量乏味的工作。
https://stackoverflow.com/questions/2690455
复制相似问题