4
Stephen Colebourne's blog: Code generating beans - mutable and immutable (blog.joda.org)
IngramChen 積分 1 編輯於

Java 早該要原生支援 property ,不曉得在龜什麼。這又沒有很難作,其他語言都有很成熟的解法可以參考了。

原生不支援,就是一堆 code gen 的工具要煩惱

haocheng 積分 0

JDK 10 據說有考慮支援 Value Objects ,不過 JDK 9 已經延到 2017 年,JDK 10 至少要 2019 了吧...

IngramChen 積分 0

value object 出了之後大概什麼都一併解決了吧。用了 VO 之後大家就不會再那邊產生一堆 getter method,而 equals/hash 也都不用寫。

我希望 JDK 10 有 union type, 一併解決 String? 這類的問題

haocheng 積分 0

用了一年 AutoValue,舊版的寫法比較簡潔,但是容易出錯,新版的 Builder 改善了順序一定要一樣的問題,但是相對的程式就變得很囉唆...

IngramChen 積分 1

這類工具有利有弊,久了之後還是會覺得自己寫維護的問題少很多。

code gen 這類的工具,原則上只有跨平台的需求時我才會考慮 (iOS/web... 不同 client 都要用) 。不然的話我大部份傾向不使用,靠 IDE gen