Google guava と Java 8
Google guava は Java 7 で使っていると便利なのだが、Java 8 の世界では使わないほうがよいように思う。
- Java 7 の世界で独自で関数型プログラミングしようとした結果、読みにくいコードになっている面がある
- Java 8 ととの機能の重複が多い
- バイナリ互換性を失うような変更が行われるため、後々困ることがある
- 自分のコードで guava に依存していると、ライブラリが要求している guava のバージョンにあわせられなくてつむことがある
- guava なにげに色々詰め込みすぎてるのでバイナリサイズがわりとでかい
- guava にある機能で java 8 にないものはわりとほとんど apache commons で代用できる。
そんな感じです。重要なのはバイナリ互換性まわりで、なにかとクラス削ったりしてくるのではまりがちですね!