Web API の JSON レスポンス等で、null を返すのかプロパティごと削除するのか

概要

表題の通りの疑問なのですが、個人的な結論は出ていないです。

返しても意味がないなら消してよいのではという意見

まぁそうだよねぇ、という気がする。

softwareengineering.stackexchange.com

required と nullable は同様に扱おうという意見

クライアントを混乱させるなってことっぽいけど確かに、という話。

でもどっちがいいとは書いてない。

opensource.zalando.com

感想

意味がない値なら返さなくていいかなー、という気がする。

そもそも null に意味をもたせるのは可能な限り避けたいし。

ただ配列の場合は空配列を返したほうがいいのかなって思う。

これは Effective Java なんかで言われてる、空のコレクション返すのと同じ理由。