マジックナンバーと定数化とひとりいじけるわたし

マジックナンバーって、ソースコード中にいきなり "30" とか出てくると意味がわからないから定数化してぱっと見で判るようにしようね、って話だよね確か。あと、何度も使うリテラルは定数にしておくと修正が1箇所で済むから楽でバグを作りにくくていいよね、ってことだよね。

全体を見渡してもひとつのメソッド中で1回しか使わない定数で、しかもそのメソッドは Javadoc 含めて15行前後しかなくて、ちゃんと Javadoc に仕様を書いて定数の意味を解説している場合には別にリテラルそのまま使ったっていいんじゃないかといつも思う。15行前後ならたぶんだいたいの画面において Javadoc ごと1画面に収まるからリテラルの定義がわからないってこともないはずだし。統合開発環境がなくてリファクタリングができないのならちょっと同情の余地があるけど、それなら統合開発環境の導入をまず考えるべき。

何が何でもリテラルを直接書くのはアウト、とかとりあえず定数化しとけって考え方、あんまり納得いかない。

「なぜ定数化してないんですか?」って疑問文で聞いてくれればこう答えられるんだけど、よほど仲のよいひとでなければ、仕事仲間に「定数化してください」って命令口調で言われたら面倒くさくてこんな思想を語らない。だからその通りにする。心中でため息をつきながら。