検索
特集/連載

「Java」は学びやすいって本当? 使われる納得の訳Javaの10個のメリット【第2回】

「Java」は企業におけるアプリケーション開発の中心的存在だ。Javaのさまざまなメリットのうち、「性能」「習得難易度」の2つを取り上げる。

Share
Tweet
LINE
Hatena

 プログラミング言語・実行環境「Java」は登場以来さまざまな進化を重ねてきた。Javaを選択する10個の理由を扱う本連載のうち、本稿は3つ目と4つ目を解説する。

メリット3.OS非依存かつ高速である

 Javaプログラムを稼働させる「Java仮想マシン」(JVM)は、Javaプログラムをクロスプラットフォーム(OS非依存)化する。JVMがOSに依存しないことはJavaの大きなメリットだ。

 「コンパイル」は、プログラミング言語で書かれたソースコードを実行可能ファイルに変換する処理を指す。Javaでのコンパイルは、ソースコードを「バイトコード」という中間コードに変換する。JVMがこのバイトコードを機械語に変換し、それを読み取って実行するという仕組みだ。一方で「C++」や「Rust」などのプログラミング言語は、コンパイルによってソースコードを機械語に変換する。こうした完全なコンパイル言語に比べて、Javaは機械語への変換やJVMの稼働による負荷が生じるため、それほど速度が出ないという見方もある。これに関してJavaは、自動でメモリを解放するメモリ管理技術「ガベージコレクション」の動作改善、実行時にプログラムをコンパイルする「JIT(Just-in-Time)コンパイラ」(「実行時コンパイラ」とも)の使用など、複数の低レベル(ハードウェアに近い部分)の最適化を適用している。これにより、Javaプログラムの動作速度は改善した。

メリット4.学習しやすい

 過去に比べて、Javaはこれまで以上に学習しやすくなっている。2017年、Javaは対話型シェル(コンピュータに対する命令を解釈するソフトウェア)「JShell」を導入した。これによって開発者はJavaのソースコードをJShellに入力し、実行結果をすぐに確認できるようになった。このことは、「Python」や「JavaScript」といった実行結果をすぐに確認できるコンピュータ言語を扱う開発者にとって、Javaをより身近に感じさせ、学習のハードルを下げたと言える。「Replit」「OneCompiler」などのオンライン統合開発環境(IDE)を使えば、学習者はIDEのインストールや環境変数(OS内でデータを共有するための変数)の設定をすることなく、Javaによる開発を始めることが可能だ。


 次回は、5つ目と6つ目のメリットを紹介する。

TechTarget発 エンジニア虎の巻

米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る