>>763
ValueObjectは別にimmutableやsingletonである必要は全くないな
そうであったほうが良いケースはDTOに比べれば多いけど

クラスとしては振る舞いをほとんど持たないデータクラスであることは変わらないが、
DTOはデータベースなどの永続化システムから、画面などに表示されるまでのデータを一時的に格納する目的で使われるって違いがある程度。
ValueObjectは一般的に値がぶっこまれている程度の緩い定義。
とはいえ、いろんな属性がてんこ盛りだったり子データを持つような場合はあんまりValueObjectとは言わないと思う