sandbox

  •  
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
no_comment
no_comment
no_comment
no_comment
no_comment
no_comment
  1. … 47 more files in changeset.
create project structure
create project structure
first import of core-206 inspection
first import of core-206 inspection
  1. /core-206/trunk/core-206-a/src/main/java/org
  2. /core-206/trunk/core-206-b/src/main/java/org
    • -0
    • +47
    /core-206/trunk/pom.xml
  3. /core-206/trunk/core-206-a/src/test/java/org
  4. /core-206/trunk/core-206-b/src/test/java/org
    • -0
    • +38
    /core-206/trunk/core-206-a/pom.xml
  5. … 18 more files in changeset.
[COMMIT DOT FILE]
[COMMIT DOT FILE]
[COMMIT DOT FILE]
[COMMIT DOT FILE]
Share project "org.jiemamy.eclipse.build" into "http://svn.jiemamy.org/sandbox"…
Share project "org.jiemamy.eclipse.build" into "http://svn.jiemamy.org/sandbox"

[COMMIT DOT FILE]

  1. /eclipse-headless/org.jiemamy.eclipse.build
no_comment
no_comment
no_comment
no_comment
Share project "entitycontext" into "http://svn.jiemamy.org/sandbox"
Share project "entitycontext" into "http://svn.jiemamy.org/sandbox"
  • More
  • CR-13
  • summarized and closed
なるほど。2もVOということで。

なるほど。2もVOということで。

ENTITYがidentificationが責務であるのに対して、VOはdescriptionが責務である、と感じてます。 VOのプロパティ(特性、性質の意味で)によって特徴付けられる「ある値」を表すオブジェクトです。 個人的には「getter(のシグネチャ、すなわちインターフェイス=仕様)によってプロパティを特定する説」 と「field(すなわち実装)によってプロパティを特定する説」があ...

ENTITYがidentificationが責務であるのに対して、VOはdescriptionが責務である、と感じてます。
VOのプロパティ(特性、性質の意味で)によって特徴付けられる「ある値」を表すオブジェクトです。

個人的には「getter(のシグネチャ、すなわちインターフェイス=仕様)によってプロパティを特定する説」
と「field(すなわち実装)によってプロパティを特定する説」があって、どちらなのかと迷ってます…。

2はVOではない、という判断でしたが、DateVO_2#getOffset():long を作ったら…VOになるんでしょうかね。
「offsetミリ秒後」という値を表すオブジェクトで、getDateは「それを現時点を基準に "計算すると" どうなる?」という意味に解釈する…とか。

「概念的なアイデンティティを持たないドメインの記述的なアスペクトを表現するオブジェクトを VALUE OBJECT と呼びます。VALUE OBJECT は我々がそれが誰(who)であるかやそれがどちら(which)であるかを気にするのではなく、それが何(what)であるかを気にした設計要素を表すために使用されます。」
とのことなので、「アイデンティティを考慮せず、whatを気にした設計要素」として「ランダムな時間を返す何か」というのもVOに分類できる気もしています。

0と1のみがVOかな〜。 return other != null && getDate().equals( other.getDate() ); をイメージしていたけど、date.clone()と new Date( time )の元となっているdate, timeでも同じ意味になるから。 でも、2は return other != null && getDate().equals...

0と1のみがVOかな〜。

return other != null && getDate().equals( other.getDate() );

をイメージしていたけど、date.clone()と new Date( time )の元となっているdate, timeでも同じ意味になるから。

でも、2は

return other != null && getDate().equals( other.getDate() );

とした場合、同値とならない。

3はデコレータだと思うけど、この場合でも

return other != null && getDate().equals( other.getDate() );

とするのがよいのではないかな。とする限りにおいてVOなんではないかと。

よくわかってませんが、、VOのところもう一度読んでみるかなぁ

r16で、sameValueAsを実装してみました。これだとどうなりますか? ちなみに、DateVOインターフェイスレベルで、実装はイミュータブルであることを保証しているものとします。

r16で、sameValueAsを実装してみました。これだとどうなりますか?
ちなみに、DateVOインターフェイスレベルで、実装はイミュータブルであることを保証しているものとします。

  • More
  • CR-13
  • finished reviewing
今はDDDは特に興味が無いのでのDDDのValueObject、ってのはよくわかりませんが、自分的には2と3以外はVOですね。 値が変わりそうにないっていう意味で。もちろん、デシリされた時にとか、バイトをいじられた時とかはわかりませんが、 そのあたりを言い出すとimutableは作成不能になってしまうので…。

今はDDDは特に興味が無いのでのDDDのValueObject、ってのはよくわかりませんが、自分的には2と3以外はVOですね。
値が変わりそうにないっていう意味で。もちろん、デシリされた時にとか、バイトをいじられた時とかはわかりませんが、
そのあたりを言い出すとimutableは作成不能になってしまうので…。

dateVO#sameValueAsの実装はどのようになりますかね。 等価の扱いがどのようになるかでVOかどうかって判定になるのかな。

dateVO#sameValueAsの実装はどのようになりますかね。
等価の扱いがどのようになるかでVOかどうかって判定になるのかな。

  • More
  • CR-13
  • started review
これってValueObjectだろうか?
これってValueObjectだろうか?
Share project "jiemamy-spike" into "http://svn.jiemamy.org/sandbox"
Share project "jiemamy-spike" into "http://svn.jiemamy.org/sandbox"
Share project "dialect-sample" into "http://svn.jiemamy.org/sandbox"
Share project "dialect-sample" into "http://svn.jiemamy.org/sandbox"
[GEN-104] Share project "hello-world" into "http://svn.jiemamy.org/sandbox"
[GEN-104] Share project "hello-world" into "http://svn.jiemamy.org/sandbox"