nullを許容しないように書けたらいいのに
何だか前も書いたような気がしないでもないのですが、
nullを排除するための方法としては、コンストラクタで引数チェックを行ってイミュータブルにしてしまう方法を使っている。こうすれば、単体テストを行うことでnullが絶対こないオブジェクトであるという安心感が持てる。まぁ、全部をこの方法で構築するのは非現実的なんだけどね。
NullPointerException - ぐるぐる〜
そもそも、"String==null"の状態は、バグの一種だと思います。
NullPointerExceptionを見たらバグと思え - argius note
という話を受けて、
キーワードとして、引数とか変数宣言時、戻り値などに「nullを許容しない」という指定が書けたらいいのになあ、とか思いました。
デフォルトでnullを許容せず、nullableでnullを許容する、が良いのかもしれないですけど。
愚直だけど、
nonnull String hogehoge = "hoge"; nonnull String hoge(nonnull String arg1, nonnull String arg2) { ... }
しかし、書いてみると冗長な気がする。orz