パッケージプライベートはもっと見直されるべき

いやすいません、不当に低く見てたのは自分なんですけどw

privateにする理由の一つに、メソッドを壊す可能性があるから自由に使わせたくないっていう思想があるようだけど、継承したクラスをどう書くかなんてのは書いた人の責任だし、同じパッケージとして定義した時点でわかっとけよ!って思うので、最近は公開する意図がないフィールド(やメソッド)はパッケージプライベートにしようかなーとしてます。そもそもデフォルトスコープだし。

こちらが作ったクラスに強く依存するコードを書かれたところで、そいつにこちらの変更の影響を与えてしまうのは仕方なかろうし、そりゃ依存するコードを書いたやつの責任だろー。依存性を弱くしようとするとインタフェース的に事前の完璧な親切設計を求められたりで、むしろイバラの道。設計者間の責任の押し付け合いとかマジごめんください。

ということで、今後、基本はpublic/パッケージプライベートで使ってみます。

って、ここまで書いておいてアレだけど、そもそもスコープの管理自体が無駄な気がしてきたぞ。