getterは不要
「getterは不要」は言いすぎで、「何でもかんでもgetterにするな」ぐらいが主張と言葉が合っているレベルだと思うmrsekut.icon
あるobjectから他のobjectを取得できると、修正時の修正箇所が増える
getterはかなりレトリックな話をしているmrsekut.icon
本当のoopとして「getHogeという名前は文脈的におかしい」という主張はわかる
でも常におかしいとは言い切れないはずmrsekut.icon
OOPに則った結果getHogeが適切になるケースもあるはず
「概念としてのgetter」についてはアンチをしていない
これはタイトルの主張が強すぎて明らかに誤解を招く
getter/setterはできる限り避けるべき、ではなく一切書くな
議論の前提となっている「objectは生きている生物だ」がよくわからんので、その後の推論はずっとよくわからないmrsekut.icon
正当性を評価できない
その前提が正しいとするなら、何となく分かる
ドメインモデル貧血症自体が主張として雑なので、これを論拠として持ち出すのは良くないと思うmrsekut.icon それにしても「getterは不要」は言葉として過激すぎないか?mrsekut.icon
そもそも計算が不要なpropertyというのは存在しうるだろう
そういうものはgetterを用意しないと扱えないはず
例えば、人間の年齢ageをそのままviewに表示したい時とか
「getterは(常に)必要!」も誤解を招くし、「getterは(常に)不要!」も誤解を招く気がするんだが、なんでそんな両極端な主張しかできないのか疑問に思うmrsekut.icon
けっきょく両者とも「OOPでは、正しいタイミングで正しいgetterを使おう」ということを言いたいだけじゃないのか
その「正しい」をちゃんと説明する手間を省いて両極の主張をしているように見えて困惑する
「getterの定義」をちゃんとせずに議論するからズレるのでは?
methodに「get」というprefixがついていることが条件に含まれることを重視する人もいれば、
何の加工もせずにhogepropertyを返すこと、と定義している人もいるし、
あるmethodが「private propertyを返すこと自体」を話している人もいる
getterを使って値を取ってきた先で何か計算をしているということは、ロジックがドメインモデルから溢れているということ
だから、そのロジックもドメインモデル内に書いて、計算したあとの値を返すべき
だから、getterはふよう
getXという名前が悪い
ただの値を取り出すだけでもちゃんとした名前が付けられるはず、みたいな