logo
/
入力値と算出値は明確に区別する
  • 要は正規化しようねってやつ
  • 算出値を持つ場合は「キャッシュ(一時的・パフォーマンスなどのため・古い可能性がある)」であることを明確に
  • 算出値をプロパティごとに毎回計算するのはバグになりやすいのでcalculatedHoge = getCalculatedHoge(hogeInput)みたいな感じにする
    • classは多分このためにあるんだと思うhoge = HogeClass(hogeInput);
      • ある状態から一時的に他の状態を作る
  • とはいえ、ひとつのモデルから算出できる値ならいいが、それ以外の場合、全てのデータを取得しなければ行けないと言うのは良くないのでは?
    • そんな混み合ったデータならそれはそれで算出値と分けたほうがいいでしょ
    • ちがう、どんなに混み合っていたとしても、算出値はキャッシュ以外で保存しちゃいけない
    • 入力値のミスはユーザーのミス(間違っていることがわかるようにする)が、算出値のミスはシステムのミスだから常に更新できなければいけない