DDDから:ソフトウェアの中心にある複雑さへの取り組み(268ページ):
実装者が計算で使用される状態を持っている場合、実装者は事実上操作の引数であるため、引数と戻り値は実装者と同じタイプである必要があります。このような操作は、そのタイプのインスタンスのセットの下で閉じられます。
a)引数、戻り値、および実装者を同じタイプにすると、操作の解釈が簡単になることを理解していますが、概念的には引数と戻り値が同じタイプでない方が理にかなっていると著者は示唆しています(たとえばImplType
)実装者としてImplType
、概念の明確さを少し犠牲にする必要があることを意味する場合でも、強制的に強制する必要がありますか?
b)私の考えでは、引数と戻り値が型であることがより理にかなっている場合、オペレーションの閉鎖とその利点ImplType
について何も知らなくても、すでにそれらをそのように定義しているでしょう。私たちが最初にそれらを異なるタイプにしたという事実は、概念的にはそれらがタイプではない方が良いことを示しているのではないでしょうか?ImplType
ありがとうございました