アカウント名:
パスワード:
あの化石みたいな古くさい構文どうにかしろよ下手したら改善を続けてるクソ言語PHPにすら抜かれるぞ
私見で勝手な意見を述べさせてもらうと、
Javaの良かったところは、C++のダメだったところを改善(単一継承にしたり、演算子のオーバーロードをStringの結合に限ったり)して、VectorやHashMapなどのライブラリも綺麗に整備した(当時はMFCにさえ無かった)ところかなと思う。
反面、ダメだった所は、初回起動が遅かったこと(JITが出るまでは)、動的リンクのために NoClassDefFoundError という謎なエラーを頻発させたところ、環境変数を使ったこと、AWT のちの Swing がダメダメだったところ 、などでしょうか。Swing が、今の Android と同じようにGUI設計ができて軽かったら、サードパーティのGUIライブラリ乱立を招くこと無く、パソコンのデスクトップでも使われたかもしれない、…というのは妄想かもしれませんが。
で、まとめると、Javaの問題って言語仕様以外の所にあったように思う。確かに現在から見ると構文が古くさく見えるかもしれませんが、それは大した問題では無いんじゃないかな。おそらく、構文を変えたとしても、今後 Java の人気が上がることは無いと思います。(現状維持ならあり得るけどね)
あくまで私見です。私見。
> 初回起動が遅かったこと(JITが出るまでは)
むしろJITコンパイルのために初回起動が遅くなったんだと思ったが(純粋インタープリターならすぐ実行開始できる)。
>演算子のオーバーロードをStringの結合に限ったa+b+cという大抵の言語で統一表記出来ることがa.add(b).add(c)になる
これを「改善」と取るんですか。。。凄い人が居るんだな。
ですよね。Python だって C# だって演算子のオーバーロードはできるけど、ダメな機能なら、多くの言語が採用するとは思えない。確かに C++ は入出力に << を使ったりと乱用気味だけど、普通の人なら、複素数、ベクトル、行列などの演算に使うよね。
あと、Java は文字列連結は + なのに、比較は equals なんですよね。初心者がハマりやすい落とし穴になってる。これを改善と言うのは違和感がある。まだ、文字列連結も concat とかにしておいた方が統一性があったんじゃないかな。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
あつくて寝られない時はhackしろ! 386BSD(98)はそうやってつくられましたよ? -- あるハッカー
そんなことより (スコア:0)
あの化石みたいな古くさい構文どうにかしろよ
下手したら改善を続けてるクソ言語PHPにすら抜かれるぞ
Javaの問題って、言語仕様以外な所な気がする (スコア:1)
私見で勝手な意見を述べさせてもらうと、
Javaの良かったところは、C++のダメだったところを改善(単一継承にしたり、演算子のオーバーロードをStringの結合に限ったり)して、VectorやHashMapなどのライブラリも綺麗に整備した(当時はMFCにさえ無かった)ところかなと思う。
反面、ダメだった所は、初回起動が遅かったこと(JITが出るまでは)、動的リンクのために NoClassDefFoundError という謎なエラーを頻発させたところ、環境変数を使ったこと、AWT のちの Swing がダメダメだったところ 、などでしょうか。
Swing が、今の Android と同じようにGUI設計ができて軽かったら、サードパーティのGUIライブラリ乱立を招くこと無く、パソコンのデスクトップでも使われたかもしれない、…というのは妄想かもしれませんが。
で、まとめると、Javaの問題って言語仕様以外の所にあったように思う。
確かに現在から見ると構文が古くさく見えるかもしれませんが、それは大した問題では無いんじゃないかな。
おそらく、構文を変えたとしても、今後 Java の人気が上がることは無いと思います。
(現状維持ならあり得るけどね)
あくまで私見です。私見。
Re: (スコア:0)
> 初回起動が遅かったこと(JITが出るまでは)
むしろJITコンパイルのために初回起動が遅くなったんだと思ったが(純粋インタープリターならすぐ実行開始できる)。
Re: (スコア:0)
>演算子のオーバーロードをStringの結合に限った
a+b+cという大抵の言語で統一表記出来ることが
a.add(b).add(c)になる
これを「改善」と取るんですか。。。
凄い人が居るんだな。
Re: (スコア:0)
ですよね。
Python だって C# だって演算子のオーバーロードはできるけど、
ダメな機能なら、多くの言語が採用するとは思えない。
確かに C++ は入出力に << を使ったりと乱用気味だけど、
普通の人なら、複素数、ベクトル、行列などの演算に使うよね。
あと、Java は文字列連結は + なのに、比較は equals なんですよね。
初心者がハマりやすい落とし穴になってる。これを改善と言うのは違和感がある。
まだ、文字列連結も concat とかにしておいた方が統一性があったんじゃないかな。