Javaってオワコンか?
Javaやってるけどこのまま続けていいのか教えてくれ... >>35
https://github.com/nodejs/release#release-schedule
○○日までセキュリティや不具合修正含めたサポートを実施しますよ的なメンテナンスサポート(リリーススケジュール)ならある
あと、Githubでissue報告できる
もちろん、具体的にコードを見せて指摘してもいい
それを俺みたいな一般人プログラマーからGAFAMみたいな大手IT企業のプログラマーまで様々な人が行っている最中、開発しているから品質面でも安心感はある
ただ、Windows Server 2008とかOS開発元もサポート切る古いOSだと容赦なくサポート切りしてくるからそこは注意だね(別にNodeに限った話ではないが) 流石に NodeJS のサポートのほうが Java 系列より上と評価するのは変な気がする。 >>39
Kotlinのラムダ式
{x -> System.out.println(x)}
Javaのラムダ式
x -> System.out.println(x)
Javaの方が洗練されてるわけです
Kotlinは古いです KotlinはGroovyの系統です
Javaの方が良いです kotlin始めたいんだけどJavaとPythonやってからの方がわかりやすいかな?書籍や動画の充実してるし。 >>47
分かりやすいかどうかは微妙なところ。但しJavaはKotlin の実行環境をJavaVMにするのであればライブラリはJava と共通になって覚える手間がかなり省ける。
Python は無関係だがコンピュータでのプログラミングそのものを知らない人であれば感覚を掴むのには良いかもしれない。 Kotlin, JavaScript(JS)は、Python 系じゃない。
主にメソッドチェーンだから、Ruby, Groovy の系統
Ruby, Groovy → Kotlin, JS
言語の初心者なら、Rubyで文字列処理・ファイル操作・繰り返しだけを学ぶ手もある。
なんせ、Groovyの本は10年近く出版されていないから
昔、Kotlinは太郎本があったけど、最近は知らない >>1です
Javaはオワコンみたいな意見が多かったからC始めたが
Cは大丈夫なんか? Cは永遠に不滅
C++は衰退
Javaはオワコン
Rust不況中 >>54
JavaはわざとCに似た文法にしたんだよ。30年ぐらい前はCプログラマ多かったし。Javaを作ったSunはワークステーション売っててOSがUNIXだったからCプログラマが多かったというのもあるかも知れない。
CとJavaが違うのかどうかといえば全然違うと言える。しかし部分的になんとなく同じような感じでプログラムを書けるのでCを知ってる人がJavaを新たに覚えるのは楽だ。(もちろん同じように見えて実は違うなんてのもあるので注意は必要)。 コンパイルが必要なプログラミング言語の利用は減ってゆく。
Javaは規格に従ってくれないものが増えすぎた。 JavaはC/C++よりほんの少し遅く、Rustとだいたい同程度の速度が出る
Pythonでアルゴリズムを書くと、それらより40倍以上遅くなる
というあたりを知っておけば使い方がわかるのでは アプリのほとんどがI/OやUI、GPUの結果待ちだから
実際体感でも遅いけど試行錯誤の手軽さは捨てがたい 流石にストリーミング処理はネイティブには勝てないな。 Ruby on Rails 製のdev.to は世界最速、insanely fast
これを超えられないでしょ? >>59
たった40倍だろ?
どんなしょぼいコンピューターを想定しているのかわからないが、並列化という概念がないんだろうな。 40コアアルCPU積んだパチョコンはソレなりに値段するし いまどきの安物のパチョコンでも4コア程度は積んでるからぬ そうすると並列化で40倍になったとしても 160コア程度は欲しいのかぬ >>65
だから、そんな単純なコンピューターはねえだろ? 中水準言語のC/C++のコードを基準に、高水準言語のPythonでそっくりなコードを書いたら、そりゃあ、かなりの速度差は出る。
ライブラリはマシン語の呼び出しなんだから、そういうものを使わないコードを書いてしまえば、当然、遅くなる。 ピトンはライブラリが豊富だから速度差はあまり気にならないのよね
ピトン良い言語だと思います >>59
でもそういうのは同じJavaVM上で動くようにコンパイルされれば解消しちゃうと思うよ。言語の問題じゃなくて実行環境の問題。 C/C++のコードをマシン語に変換して実行することを、C/C++はマシン語かのように言ってしまうのは、8ビットパソコン、16ビットパソコン時代からあるよな。
マシン語を作るためのプログラミング言語を速い、遅いと言っているのはよくわからない。 OSの機能としてJavaがあるのに終わっているとか素人すぎだろ >>77
Javaで実装されているものがたくさんある。JavaはVMで動くから、UNIX、LinuxだとJavaがないと動かない。 >>77
Javaは組み込み系として作られたから、Javaはあってあたりまえの存在。
Javaで何かを作るかどうかはユーザーの話だろ? 結論 Java はオワコンだから新たにやるなら Rust が良いよ
だけど教養として Java という言語(背景や現実のありさま)を知っておくのは有効 >>71
気持ちは判るが
ある程度のレベルになると描いてるソースがどうコンパイルされて
どんなマシン語になるかまで想像しながらC/C++を描ける
そういう意味だと思う 昔のCコンパイラは最適化があまり掛からなくて馬鹿正直にソースの直訳みたいな感じのコードを吐いてたし、使う側もそれが分かってたからソースの方でプログラマが自分で最適化していた。この変数は register にすべきだとか a++ ではなく ++a と書くべきだとか。
しかし時代が進んで最適化がうまく掛けられるコンパイラが出はじめるとこういったプログラマによる最適化はむしろ邪魔になってきてやるべきではないことに変化して行った。 そもそも最適化以前に a++ と ++a とは意味が違う >>85
たの変数に代入しないで単に++するだけなら同じだろ。 簡単に言えば、Java vs Ruby on Rails
JavaはSES、SIer・中抜き多重請負構造・IT土方・インターネット禁止のブラック企業、
階層が決められている身分社会で、一生低賃金コーダー。
設計は、5大SIerみたいな上の階層の高給料の大卒がやる
年収3千万円の5大建設業と同じ。
中抜きだから、上の階層だけが高給料
Railsは、モダンな開発環境・リモートワークのスタートアップで、ビジネスを設計する。
単純コーダーじゃなくて、ビジネスマインドが必要
唯一、文系の高卒が高給料になれるチート職業!
Rails, AWS Solution Architect は13万ドルとか鉄板コース!
YouTube で有名な雑食系エンジニア・KENTA は、
初心者のキャリアパスは、Rails → Go だけと言ってる 俺は今ケンタッキーフライドチキンで辛口チキンフィレバーガーBOXを全部食べ終わったところだ。お腹いっぱい。 >>88
毎日毎日朝から晩まで5chでkentaコピペ繰り返すだけのゴミ人生でした vscodeのjava拡張機能ひどすぎない?
なんか前はもっと普通に使えてた気がするんだけど vscodeのjava拡張機能ひどすぎない?
なんか前はもっと普通に使えてた気がするんだけど なんだかんだ充実しているのはJava実装のツールだしJVMで動くIDEのが手堅いよ eclipseにアレルギーあるから使うならNetBeansかな? 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使ってる