0462Name_Not_Found
2018/10/03(水) 20:25:58.15ID:???例外を異常時の緊急停止機能のような安全装置のように思っているから
例外で止まる(キャッチしてない例外)というのは単なるプログラムのバグに過ぎない
一部メモリ不足とかアプリケーション側で対応できないものがあるが
(例えばRubyだとStandardError以外の例外、JavaだとJava.lang.Error以外の例外)
それらを除き、例外が起きるというのは考慮漏れというプログラミング上の単純なミスに過ぎない
仕様とか設計とかそういうレベルではなく、単純な考慮漏れ。
今回の話はその中でもnullエラーという極めて単純なもの
nullエラーを防ぐには、nullになりそうな箇所を一つ一つ潰すというやり方の他に
Nullオブジェクトパターンという設計レベルで解決する方法がある
なぜNullはダメか
https://www.kaitoy.xyz/2015/07/26/why-null-is-bad/
jQueryはこのNullオブジェクトパターンを採用している
要素が見つからないかもしれないと常に考えてプログラミングすることで例外をなくすのではなく
要素が見つからなくても問題なく扱えることで例外をなくしている
こちらはバグはないほうが良いと言ってるのに、
バグがあったら止まるほうが良いだろうと言ってるからレベルが低い