Javaの不満点

とっさに出なかったりするのでメモ(思い出すたびに追記していく用)
分かってないなーと思われると思いますが、こっそり諭してくれると嬉しいです。

  • 関数が第一級じゃない
    • わざわざインターフェースとか馬鹿らしいです...
    • mapとかfilterとか面倒。ループ回すほうがJavaらしいレベル
  • 部分適用できない
    • わざわざクラスとか馬鹿らしいです..
  • レコードあるいはタプル
    • 2値返したいだけなんですけど...
  • 配列とListのごちゃまぜ感やばい
    • 全然違うのはわかるけど、どっちでもいい状況がよくあって、どっちにしようっていうのどうすればいいんだろう
    • arr.length lst.size() str.length() これはない
  • 代数的データ型とパターンマッチ あるいはCase Class的なものほしい
    • Javaだけの不満じゃないけど
  • ifとかswitchとかtryとかが制御構文
    • Hoge hoge = null; try{...} じゃなくて、Hoge hoge = try {...}って書きたい
  • 組み込みのAPIに副作用前提のvoidのものが多くて使いづらい
  • try {...} catch(IOException e){ try{...} catch(IOException e){...}}
    • 勘弁して下さい
  • equals, hashcode
    • ただただ面倒
  • リフレクション連打
    • Javaは静的型付け、安全な言語(ドヤァ ププ
  • 後方互換性を保っています!
    • NoSuchMethodException ! ライブラリのバージョン当てるゲーム..