アカウント名:
パスワード:
あの化石みたいな古くさい構文どうにかしろよ下手したら改善を続けてるクソ言語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 とかにしておいた方が統一性があったんじゃないかな。
どうせPHPも満足に使えないPHPerさんでしょ?FUDご苦労さん。
PHPのどこが「改善」なんだ。互換性のない仕様変更を加える度にフレームワークやライブラリが死んで、アプリの総移植が必要になってるじゃん。#まるでVB.NETを改良型VBと呼ぶようなもんだよなー
PHPは着実に型安全に向かって進化してるじゃん今やRubyなんぞよりPhpStormで型安全に全力に振ったPHPコードを書く方が遙かに快適だし安全だぞ
…ダメだ、PHPで安全性とかセキュリティとか信頼性って言葉を聞くたびにPHP 5.3.7のcrypt関数のバグを思い出してしまう…いまはリリースのプロセスも改善されてんだろうけど、このバグはあまりにも、あまりにも衝撃的に過ぎた。
> 今やRubyなんぞよりPhpStormで型安全に全力に振ったPHPコードを書く方が遙かに快適だし安全だぞ
w
やっぱりあの手のweb系言語って「色々」大変なんだなアセンブラが至高(CとかHDLでもいいけど)
アセンブリは1年で陳腐化するからIntelやAMDはすぐに新たなマイクロコード追加してくるから
追加してくるだけで古いものが無くなるわけではないでしょ?
互換は保てても陳腐化っちゃ陳腐化じゃない?そんなに追加命令使うのかは知らないけど。
まあでも互換性のない仕様変更はそうそうないでしょ?
古くさい構文をどうにかしちゃうと、新しい言語を作るのと同じで、Java ではなくなってしまうから、やらないんじゃないかな。
まあ新しい構文が必要ならKotlinなりLombokなり使うよね。それはそれとして古臭い標準ライブラリはどうにかしてほしい。新規開発で使うべきでないようなAPIがいっぱい残存してて混乱の元。
C#の怒濤の進化を見ちゃうとねえ、いまさら中途半端に進化しなくてもいいやという気になってくる
参考までにどういうのが古臭くて、PHPでもScalaでもJSでもPythonでも良いからどういう所が新しいの?
型推論
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
人生unstable -- あるハッカー
そんなことより (スコア: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 とかにしておいた方が統一性があったんじゃないかな。
Re: (スコア:0)
どうせPHPも満足に使えないPHPerさんでしょ?FUDご苦労さん。
PHPのどこが「改善」なんだ。互換性のない仕様変更を加える度にフレームワークや
ライブラリが死んで、アプリの総移植が必要になってるじゃん。
#まるでVB.NETを改良型VBと呼ぶようなもんだよなー
Re:そんなことより (スコア:1)
PHPは着実に型安全に向かって進化してるじゃん
今やRubyなんぞよりPhpStormで型安全に全力に振ったPHPコードを書く方が遙かに快適だし安全だぞ
Re: (スコア:0)
…ダメだ、PHPで安全性とかセキュリティとか信頼性って言葉を聞くたびにPHP 5.3.7のcrypt関数のバグを思い出してしまう…
いまはリリースのプロセスも改善されてんだろうけど、このバグはあまりにも、あまりにも衝撃的に過ぎた。
Re: (スコア:0)
> 今やRubyなんぞよりPhpStormで型安全に全力に振ったPHPコードを書く方が遙かに快適だし安全だぞ
w
Re: (スコア:0)
やっぱりあの手のweb系言語って「色々」大変なんだな
アセンブラが至高
(CとかHDLでもいいけど)
Re: (スコア:0)
アセンブリは1年で陳腐化するから
IntelやAMDはすぐに新たなマイクロコード追加してくるから
Re: (スコア:0)
追加してくるだけで古いものが無くなるわけではないでしょ?
Re: (スコア:0)
互換は保てても陳腐化っちゃ陳腐化じゃない?
そんなに追加命令使うのかは知らないけど。
Re: (スコア:0)
まあでも互換性のない仕様変更はそうそうないでしょ?
Re: (スコア:0)
古くさい構文をどうにかしちゃうと、新しい言語を作るのと同じで、
Java ではなくなってしまうから、やらないんじゃないかな。
Re:そんなことより (スコア:1)
まあ新しい構文が必要ならKotlinなりLombokなり使うよね。
それはそれとして古臭い標準ライブラリはどうにかしてほしい。
新規開発で使うべきでないようなAPIがいっぱい残存してて混乱の元。
Re: (スコア:0)
C#の怒濤の進化を見ちゃうとねえ、いまさら中途半端に進化しなくてもいいやという気になってくる
Re: (スコア:0)
参考までにどういうのが古臭くて、PHPでもScalaでもJSでもPythonでも良いからどういう所が新しいの?
Re: (スコア:0)
型推論