Javaってオワコンか?
Javaはオワってないけど 未だにJavaから抜け出せないJavaラーはオhル OracleのJava Bronze持ってますが仕事ありますか? JavaのJava語がKotlin語に置き換わる事はあってもJavaのJVMがオワコンになることは、OpenJDKとかがライセンス的な問題で世から消失しない限りありえないな それにJava/KotlinはJetBrains産IDEが優秀すぎる 統合開発環境の良し悪しが重要と思っている人間は歴史を学んでいない。 >>101 まじでサーバーサイドJVMはどんな環境でも「とりあえず動く」ものは作れるからな Java最高 Goがパフォーマンス性の高いマルチプラットフォームなビルドをしやすいけど、Javaの圧倒的な手軽さには遠く及ばないね >>102-103 そう言わずにJetBrainsのFleet使ってみろよ まだプレビュー版でプラグインの不足感あるけどVSCode並に使いやすいぞ FleetをIDEと言っていいのかは知らんけど c#使ってるとgetterとかsetterとかめんどくさくて >>106 Javaでも失敗だったとして、何もかもそうするのはやめたのにいまだに過去の思想でやっている人間が多いだけ UI開発だと状態管理しなくちゃあかんからgetter、setterとは縁を切れないわ 使用するフレームワークがそうなら仕方ないが、自作していまだにやるのはヤバい。 >>103 今の時代は重要だよ。あるのとないのとじゃ広まり具合が変わると思う。 >>107 Javaってその辺拡張したの?Kotlin は最初からその辺を考慮した言語仕様になってるが。 Javaはオワコンにならないよ Java語の代わりになるKotlin語が同じJVMでむっちゃ使いやすいからね Java批判してるやつってたいていJava8以前の知識で語ってるからなぁ StreamAPIとか知らないぞあいつら Java批判する人は、Oracleが終わってるうんぬん言ってくるイメージだわ 正直、時代の最先端を行ってる言語とは言えないと思う でも金融機関で使われていたりとか、仕事はまだ消えないと思う 時代の最先端ってヌル安全?それともデータ指向的な? 一言では言えないけど、最近出てきた言語はいろいろ進んでるから 例えばGoでは基本的にクラスの概念が無いとか そういう感覚的な要素 フロントUIやるならクラス概念のあったほうが便利だけど、例えばサーバーサイドやるだけならクラス概念のない言語でも良さそうよね サーバーサイドとしてのJavaはオワコンで間違ってない時代になったのかな 外部とWebAPIくらいでしか連携しないサイトならずっとそう でもJava必須なところがまだまだある >>113 JavaのStreamAPIをやるなら、もういっそKotlinに移行したらいいのにw >>113 Stram 関係って Java 8 からあったんじゃなかったっけ? >>120 そうだな。Kotlin の方が最初から考慮されている分だけ分かり易い感じがする。 >>123 「以前」をどういう意味にとるかってことじゃないか? goo辞書 「以前」 https://dictionary.goo.ne.jp/word/%E4%BB%A5%E5%89%8D/ >「以」は基準となる数値を含むのが普通であるが、例えば「明治以前」というときに、 >明治時代を除いて、その前をさす場合もある。 ヌル安全もOptional<T>があるからなぁ キャッチアップできてないやつ多すぎ ヌル安全に拘るなら同じJVMのKotlin語を使えばいい ?がついてなければNullではないことが保証されててわかりやすい >>127 Optional<T>があればNull安全だと思ってるほうがヤバいで Null安全という概念くらいはキャッチアップしておこうな >>125 日本語としては「以前」のような言葉は明確な線引きがない。 境界を厳密にしているのは、日本語を使った用語の定義で、日本語の定義ではない。 最近のは知らんが古いJavaのシステムの保守しかやったことなくてeclipseで変数の値を確認するのはデバッグ時に変数のところにカーソル当てればわかったけどgetterの場合は直接は確認出来なくて不便だなあと思った記憶があるんだが C#のプロパティみたいに確認出来へんの? って思ってたんだけど コードで書かれたgetterは副作用があるかもしれないからおいそれと勝手に評価できない IDEが知っているフレームワークや言語のシンタックスシュガーで宣言しないと無理 Javaオワコンの意見多かったからRubyとC++と Rustはちょっとだけやってみた Ruby→オブジェクト指向最高、でもGUIがあんまり C++→ややこしすぎる Rust→ライフタイムで挫折 Java→swing神 いまだにC#のGUIがしっくりこなくてずっとswing使ってる プロの労働市場は、Ruby vs Java Javaは5大SIer・多重請負構造のIT 土方だから中抜きされる。 1人月100万円でも、数社が間に入って、20万円になる これを、20年やっても低年収のまま。 下の階層の人が、上の階層には転職できない。 単純コーダーを20年やっても、Linux システムを構築運用できないから Ruby on Rails, AWS Solution Architect の米国年収が、 13万ドルとか高いのは、システム設計・構築運用ができるから 言語でも、Rubyは、Go/Rust/Elixir の3大言語を超えた! Ruby, Elixir : 9.3 万ドル Go : 8.9 Rust : 8.7 多くの言語 : 6.5〜7 PHP : 5 Dart : 4.4 PHP, Dart は、コンピューターサイエンスを勉強していない高卒用言語 >>138 >Ruby on Rails, AWS Solution Architect の米国年収が、13万ドルと高いのは フレームワークの年収は、 Ruby on Rails : 9 万ドル Django : 6 Laravel : 3.8 https://survey.stackoverflow.co/2022/#overview >>136 JDKと分離されたのめんどくさいよね ビルドと実行はIDEなりビルドツールに丸投げしてるわ デスクトップアプリはKotlinのComposeが結構使い物になるぞ jre/jbrをちゃんと内包して実行バイナリ形式で出力してくれる windowsならmsiっていうインストール形式 https://qiita.com/shunk0616/items/e83c7739dbc4d9f257f0 オワコンだよなあ ユーザー環境にJREとかjdkとかもう時代遅れ 今は何もなくても軽く動かないと C#の.NETとかはWindowsに同梱されてるしな Tauriもelectronの反省からシステム同梱のウェブエンジンをつかう Windowsに同梱されていないJavaのJVMはオワコン 今はネイティブコンパイルできるからユーザー環境にJREとかJDKとか必要ないやろ そんなことも知らんとか君がオワコンだわ ゆうていまだにそういう製品多くね 特に業務向けアプリ あえてjava使う理由はないけど、まあ別にjavaでもいいかなとは思う。 >>147 Javaでネイティブコンパイルってなんやねんw この近年でキミらエンドユーザーがアプリJVMで動かすことなんてゲームアプリだけだよ そしてそういったものはJVM実行環境がゲームに同梱されているからJREをユーザーが用意する必要がない キミらのオワコンと言う根拠は浅すぎるよ キミら自体がオワコンにみえる ちゃんと教えてあげると、Javaがオワコンと最近またよく言われてるのはOracleがJDKのLTSを一部有償化して、Javaのお得意様だったサーバーサイド業者がGoやC#等の言語に流れたから、以上 >>150 Androidアプリのことを言ってるんじゃない? ネイティブコンパイルといえばGraalVMが商用利用を無償化したからSpringBootで作ったWebアプリをメモリ消費量削減のためにAOTコンパイルしてもいいかなと思ってるけど、ビルド効率の評判がゴミすぎるのとコード調整が面倒くさくすぎて多分一生やらないとも思う Spring Bootのネイティブイメージ化を導入してるところってそんなにあんの?苦労話しか聞いたことないんだけど >>156 例えばどういうところがエアプ? 指摘できないとお前はエアプだぞ Javaってシンプルだよな なんだかんだ実はCに似てると思う Cに似せたってのはあるだろうけど シンプルさを狙って生まれたところも似てると思う 初期のジェネリクスもなかったころのスッキリ感がすこ >>167 JavaはC、C++の良いとところを継承して、オブジェクト指向言語を普及させた功労者。 サン・マイクロシステムズのJavaのライブラリを見て、マイクロソフトはライブラリ作りの正解を知り、.NET Frameworkを急いで作ることになった。 なんだかんだ医大な言語だと思う クセもないしな 冗長になりがちなのは言語というより OOP不勉強勢によるどうしようもない傾向だと思う 医大ってなんだよww 言語がオワコンならスレもオワコンだなww つまらないところにレスするとは頭に血が登るタイプなんだろうな JavaScriptはまだまだ乗りに乗ってるのになあ javaとjavascriptは同じ名前にしろって要求に従っただけで中身はあんま関係ないんよな ↑みたいにいまだに区別付いてない子もいるしそれなりに効果はあったんだろう javascriptがjavascriptという名前じゃなかったら消えてたかもしれないしな 俺はandroidアプリやることになって初めてjavaを使ったわ。かれこれ1年な。それまではc#のwpfな。 早くJavaが終わってKotlinになって欲しい。 Kotlin2.0はコンパイラが高速化されるらしいから期待してる ビバ!JVM! Javaだけでwebフロントとバックを開発できるGWTを使っているけど メチャ便利やぞ Javalin は言語ではなくフレームワークだよね。 >>187 184の流れでweb開発の話をしてるんだけど、ちゃんと前後のレスも読んでくれ じゃば上手くかける一にはケイイ抱くけど、じゃば自体には大して >>172 っしょに医薬品メーカーのぎょうむあぷりつくろーぜ 営業おまえな >>146 そう言えば .NET のバイトコードを出すような Java コンパイラーってないのか? もし未だに無いとすると権利の関係かな? 技術的には可能だよね 大丈夫。過去の資産が多くても COBOL や FORTRAN のようにやがて一般人の触れることのない所に行って表舞台からは姿を消すから。 過去の資産っていうけど今でも使うものはどの言語にもあるからJavaは同じ機能を時代遅れな設計で使えるだけになってるよね >>201 そうでもない 保守性が最重要事項の一つなのはいつの時代でも変わらないから いろんな言語触ってまた戻ってくると やっぱJavaってのは驚くほどシンプルなのよ 言語設計の段階でC#で言う値型みたいなの入れようか迷ったと思うんよ やっぱ値型みたいなんとin,ref,outみたいなんセットにして効率性に欲出したいんよ でもそれをしなかったよね 参照型変数、およびそのの値渡し、これだけ 他のメリットとシンプルさが天秤に乗ったとき必ずシンプルさを取ったような言語 速度や効率に対して変に欲出さなかった潔い言語 どこかの記事で見たけど、 サイトかサーバーのシェアで、Ruby on Rails がJava を抜いたらしい PHP 80%、これはWordPress が多いのだろう。 Rails, Java 5% Rails vs Java は、永遠の天敵! rubyは言語のデザイン上でブロックってもんが邪魔してる気がする a.each {|x| p x } メソッドに対して一個しか渡せないのも不自由だし 他の言語例えばrustなんかだと foo(|x| bar(x), |y| baz(y))のようにクロージャを二個以上渡せる 他のパラメータと同格に、カッコの中にクロージャを渡せる まつもとさんも今はこれ失敗したと思ってるやろうけど あとクロージャが f = -> x {bar(x)} になるのも醜いし 呼び出しもf.call(x)もf.(x)もf[x]もどれもかっこ悪い f(x)に出来なかった苦しみが出てる Ruby のブロックは、左から右へ読むから、横書きの英文では自然。 [ 1, 2 ].each { |x| p x } こういう、横書きで右から左へ読む言語は不自然 x <- [ 1, 2 ] 絵画でも、まず左上から右へ視線を移せ。 そして下へ。そこから左へ行って、上に上がる。 つまり、時計回りに中心へ見ていく 英語では左が過去で、右が未来として捉えるから。 マンガとは逆 あしたのジョーのラストシーンで、 ジョーが左を向いて座っているのが、 日本では未来へ続く、明るい終わり方だが、 欧米では過去に向いているから、閉じた終わり方 >>207 数式は y = f(x) のように右から左へ読むから、プログラム言語でもそのまま y = f(x) と書くのが自然で、 x.f() -> y のように左から右へ書く方が不自然だろ。 y = f(x) を右から読むやつがいるのか 戦前の人とかアラブ系の人とかかな? 数式通りのFortran A = B - C 英語語順のCOBOL SUBTRACT C FROM B GIVING A 正反対だろ。 A = B - Cは英語では”A equals B minus C”と読むよ COBOLと英語を同じものだと思っちゃいけないよ >>212 数式を読むときは数式の流儀で読むから、英語本来の語順ではない A equals B minus C になる。 COBOLでも数式通りに COMPUTE A = B - C とも書ける。 数式とかまんま英語の語順だろ おじいちゃん少しは勉強したほうがいいよ >>216 数式読み下し文は特殊な英語で、一般英語とは違う。COBOLは数式が苦手な人でも一般英語で 書けるのを売りにしていて、数式よりさらに一般英語からかけ離れた謎の呪文を作ったわけではない。 そもそも>>207 の投稿がおかしい。不自然とされる x <- [1, 2] は英語で x equals to [1, 2] と 読める一方、自然とされる [1, 2].each { |x| p x } は英語では print x for each x in [1, 2] で ほぼ逆順になる。>>207 は英語の語順ではなく実行順序と読み替えれば文意が通じる。 そう捉えれば、y = f(g(h(x))) と x.h().g().f() -> y についても、実行順序は「xを引数として 関数hを呼び出し、その戻り値を引数として関数gを呼び出し、その戻り値を引数として関数fを 呼び出し、その戻り値をyに入れる」だから、それと同じ順に書く後者が自然で、数式通りの 前者は正反対で不自然な記法ということになる。 でも、プログラミングでは数式が苦手な人はお呼びでないという見解が強いので、今ある殆どの プログラミング言語はFortran式が当然になっていて、Ruby厨お爺ちゃんの小言は顧みられないw 「数式読み下し文は特殊な英語で…」 ここに具体例でてこなかったあたり,都合の悪い指摘はスルーして持論を垂れ流すことで反論してる感を出したかったんだろうなぁ こういうの使えば昔の Applet も復活できそうだな。クライアント側に何もインストールしておく必要がないのも良い。 cheerpJ https://cheerpj.com/ja/ 拡張子がjarのファイルがJavaだと知らねえんだろ AIで速さが正義になっていくからJavaの将来はくらいな どうでもいいけどjarって"ジャ~"って読むよね? JARと書くと日本エア保守だがJALの日本エア左翼よりはまともに聞こえなくもない ただこの文脈ではエアがエアプの意味に取られるからどちらも良いイメージではない 全部日本語にしても日本空気保守、日本の淀んだ空気を守る?そんな政党要らんわ read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる