NULL安全
Null Safety
NULL安全とは
NULLが最初から入り込まないようにするプログラミング言語の機能または手法
NULL安全以前ではどういう問題があったか?
一般にNULL値を「未初期化」や「非存在」や「未知」を示す使い方をするが、その使われ方は実装に依存する。
この実装依存の状態がインターフェース不整合を起こす要因になっている。
意図せず、NULL値を参照しようとしてシステムやプログラムが異常停止して困ることがよくある。
たとえバグがあったとしても、(他を巻き添えにして)いきなり止まってほしくはない。
ルーチンの先頭でいちいちNULL判定をしてガードする(NULLガード)のは煩わしい。
NULL安全では
NULL がそもそも使われないように型システムで除外する。
または、NULL という概念自体をなくす。
NULL を使う代わりに明示的にフラグを別途用意して、そのフラグでポインタの有効性などを管理する。