Relay使ってての話なんだけど
- Mutationはできる限り単一責任にした方が、のちのユースケース変更時にコスト低そう
- リソースに対する状態変更は、Mutation名を動詞にしてidだけ送るとクライアントとサーバー側を疎結合にできて良さそう
UpdatePostStateMutation
とかで変数に{ id, status: 'visible' }
とかやるんじゃなくて
HidePostMutation
, ShowPostMutation
とか作ってid
だけ送る。status: 'visible'
とかの状態名ってどうしてもサーバー側の知識が漏れがちだから、id
だけ渡す方が変更に強そう。