generated at
NullObjectパターン
>厳粛な空護り


Strategyパターンの応用例の1つともいえる
nullは、抽象度が高すぎる表現
nullの中にもいろいろな理由がある
とある理由で null にしている場合と、失敗してnullになっている場合など
遅延初期化のために、「まだnullです」って状況もある
C#のNullableとOptionの違いは、nullの扱いをどうするかに特化した機能の話
>nullの発生源
>x は初期化されなかった。(C# では、初期化されていない x の値は null になります。)
> 誰かが x に null を代入した。あるいは、誰かが x の初期値として null を指定した。
なんでもかんでもNullObjectパターンのクラスを作ったらクラス爆発しちゃうので、使い所を考える
enumでnullとしての列挙子を用意するのも実装例の1つ


使い所と落とし穴について
最近は、null安全とOptional型を使う選択肢も増えた