在 Scala 2.10 中,我们显然得到了改进的反射。
这将如何影响lift-json、jerkson、sjson 和朋友?此外,我们是否可以期待在不久的将来,内置的 JSON 语言功能就像 Groovy 在 Scala 中的出色 GSON?
我问的原因是我非常想做:
case class Foo(a: String, b: Int, bar: Bar)
case class Bar(c: Int)
val foo = Foo("hey", 10, Bar(23))
val json = foo.toJson
没有箍跳(即样板式的准备工作),即使是任意复杂的对象图。也许我问的太多了,但一个人总是可以梦想的。请粉碎我的 2.10 梦想,或者告诉我随着备受期待的 Scala 版本开辟了哪些新途径。下一个
此外,对于案例类,似乎对于验证/创建,scalaz 验证是首选武器。作为对象创建的安全代理或错误收集器,这看起来非常棒。然而,作为一名 Scewbie,我发现 scalaz 有点挑战性,尽管它具有明显的力量,但我仍在抵制 F-ing 黑暗面;-)
无论如何,这里的重点是,使用 2.10 反射,我们应该能够在运行时将表单帖子中的字段绑定到案例类的属性,并仅基于属性类型执行基本验证(即不会有指定单独的验证逻辑,指定属性 foo 必须是一个字符串,因为它的类型已经在我们现在可以正确反映的案例类中定义)
那么,勇敢的新世界来了,还是现有的工具是可预见的未来的中流砥柱?