SEって、なんでも否定から入るよね? 私も意識しないとどうも否定から入ってしまう人間なのですが、だいたい2つの理由があるんです。 一つは、職業プログラマの書くコードの半分以上は例外処理だってことです。普通に普通してくれる人は何の問題もなく処理できるのですが、ちょっとした例外でも、その例外パターンって無限にあるものなんです。だから、仕様を決めるときはメインのルートの何倍もの労力を使ってパターンに漏れが無いか探すことになるのです。なにせ、パターン漏れが最もバグに陥りやすい事象ですから。 もう一つは、仕様の輪郭をはっきりとしたいんです。たいてい顧客ってイメージで言ってくるんですよ。例えば、こんなものが欲しいんだけどって多角形みたいのを提示されても、作る側としては五角形と六角形では全然違うわけです。そこをはっきり定義させるために、「ここから先はできません」という“否定”が持つ強さによって輪郭をはっ