final変数を積極的に使ってみる実験

Beanの命名規則とか「カプセル化」論に引っ張られて、インスタンス変数をついついprivateにしてsetterとgetterを何も考えずに付けてしまいがちなのは、私だけでしょうか。

ですが、そもそも一旦setしたモノって変更されないことも多いというかほとんど変更しないし、俺々フレームワークだと「Bean?なにそれ?食えるの?」ってな感じだし、public finalにしちゃえばいーんじゃないのと思いついたので、実験的にしばらく試して使い心地を見てみます。

画面表示用のデータなんかも更新することはないんだし、無駄にカプセル化してgetHoge()みたいに回りくどく書くことぁーないんだよな。

getterで参照する内容をラップするときだって、それならコンストラクタでラップしちゃえばいーんだし、何よりもコンストラクタで初期化しないフィールドには静的チェックでエラーとしてくれるので、set漏れが防げてかなり助かりそうな予感です。