怪しげな写像と直接的な写像
プロダクトづくりのためのソフトウェア設計スタイル
こちらのスライドより引用
https://gyazo.com/af7daecd39982f1c687c16ece052b91fhttps://gyazo.com/6907ed7e310aa1863c0136f964032d25
現実世界は型の候補にあふれているのに、怪しげな写像で満足してしまっている
値オブジェクトを作成して直接的な写像を増やす
#DDD(Domain-Driven_Design)
Value Objectについて整理しよう - Software Transactional Memo
直接的な写像をやりすぎること、値オブジェクトの原点を忘れていると、この記事で指摘されている Value Object Obsessionに陥るので注意
「ドメインの語彙に数学上の概念である整数などは存在しないのですべての語彙を専用のクラスで包め」という行き過ぎた思想である。それはエンティティの全メンバーやデータベースの全列のために「顧客郵便番号」「送付先郵便番号」「事業所郵便番号」「契約日」などのクラス(メンバではなくクラス!)を定義して、immutableな振る舞いを強制する事を以てValue Objectであると言い張り、ドメイン知識の断片をそれぞれのクラスに書き散らして「高凝集になった」「型システムが守ってくれる」と喜ぶ奇行に走る。
そもそもこの写像をすること自体は、値オブジェクトであることの目的ではない