「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

JavaVM

pointこの用語のポイント

pointソフトウェアだよ

pointJavaのプログラムを動かすときに必要だよ

point「一度書けば、どこでも動く」を実現するための切り札だよ

point「Java Virtual Machine」の略だよ

スポンサーリンク

簡単に書くよ

JavaVM(読:ジャヴァVM)とは

Javaで作ったプログラムとコンピュータの通訳。
もう少し具体的に書くと

Javaの「一度書けば、どこでも動く」の思想を実現するための切り札で、Javaのプログラムを動かすためのソフトウェア
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「プログラミング言語」と「Java」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

プログラミング言語は「プログラムの元ネタソースコードを書くときに使う言葉」です。

一般的なプログラムというのは、まず人間語で元ネタを書き、それをコンピュータさんが分かる言葉に翻訳することで完成します。

JavaVM

この「元ネタ」を書くときに使う言語がプログラミング言語です。

JavaVM2

Javaは「一度書けば、どこでも動く」の理念で作られたプログラミング言語です。
プログラムの元ネタを書くときに使う言葉のひとつです。

JavaVM3

Javaのプログラムは、どんな環境でも動くということに(建前上は)なっています。

JavaVM4

ちなみに、Javaが「オブジェクト指向」という用語を世間一般に流行らせました。

以上を踏まえて、本題に入ります。

繰り返しになりますが、Javaには「一度書けば、どこでも動く」な思想があります。
「一度作ったプログラムは、WindowsでもMacでもLinuxでもその他の環境でも動くぜー!」です。

この思想を実現するための切り札で

Javaのプログラムを動かすためのソフトウェア

が「JavaVM」です。
「Java VM」のように「Java」と「VM」の間に空白を入れることもあります。
空白の有無についてはどちらでも良いです。

また、JavaVMは「Java仮想マシン」と呼ばれることもあります。
「仮想マシン」を英語にすると「Virtual Machine(バーチャル・マシーン)」です。
その頭文字を取ると「VM」だから「JavaVM」です。

JavaVM5

その名の通り、JavaVMのイメージは仮想マシン(コンピュータの中に作られた、なんちゃってコンピュータ)です。
コンピュータの中にJavaで作ったプログラムを動かすための仮想環境を作って、プログラムはその中で動かすことで、本来の環境による差を無視できるようにしよう、な狙いです。

例えば、Javaで作ったプログラムがWindowsのパソコン上で動くとしましょう。
このとき、Javaで作ったプログラムは直接Windowsパソコンさんとやり取りをするわけでは ありません。
JavaVMとやり取りをします。
そして、JavaVMがWindowsパソコンさんとやり取りをします。

JavaVM6

さて、このJavaで作ったプログラムをMacのパソコンに持っていったとしましょう。
Windowsのパソコンさんで動いていたJavaで作ったプログラムをMacのパソコンさんで動かします。

このときの流れもWindowsパソコンさんのときと同じです。
Javaで作ったプログラムはMacなパソコンさんと直接やり取りしません。
JavaVMとやり取りをします。
そして、JavaVMがMacなパソコンさんとやり取りをします。

JavaVM7

どんな環境に持っていこうとも、Javaで作ったプログラムがやり取りする相手はJavaVMさんなのです。
Javaで作ったプログラムはJavaVMさんのことさえ考えていればOKです。

あとのことはJavaVMさんが良しなに取り計らってくれます。
相手がWindowsであればWindowsに合うようにやり取りしてくれますし、相手がMacであればMacに合うようにやり取りしてくれます。

つまり、JavaVMさんはJavaで作ったプログラムとコンピュータの通訳です。
プログラムと環境の間に入って、仲を取り持ってくれます。

Javaで作ったプログラムはJavaVMさんとやり取りするだけなので、どんなコンピュータが相手でも自分を変える必要は ありません。
例えば、JavaVMさんと日本語でお話するのであれば、ひたすら日本語だけを喋れば良いのです。

JavaVM8

仮に英語しか分からないパソコン上で動かすときも大丈夫です。
JavaVMさんが英語に翻訳してくれます。

JavaVM9

フランス語しか分からないパソコン上で動かすときも大丈夫です。
JavaVMさんがフランス語に翻訳してくれます。

JavaVM10

環境による差異はJavaVMさんに吸収してもらうので、プログラム自体は「一度書けば、どこでも動く」ってな理屈です。

実際には、環境によって微妙に動きが変わったりしますけどね。


image piyo2

一言でまとめるよ

まぁ「JavaVM」って単語が出てきたら「Javaで作ったプログラムを動かすためのソフトウェアなんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像011
書籍画像026

おまけ

■訳してみるよ

「Java(ジャヴァ)」はプログラミング言語の「Java」です。
「VM」は「Virtual Machine(バーチャル・マシーン)」の略です。
「virtual(バーチャル)」の意味は「実質上の」とか「事実上の」とか「実際上の」とかです。
ただし、今回は「仮想の」と解釈してください。
「machine(マシン)」の意味は「機械」とかです。
何となく くっつけると

Javaの仮想の機械

となります。




書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
「定年力」の鍛え方 老後の毎日を最高にする方法
エンジニアのための生成AI入門 はじめての生成AIアプリ開発からエージェント開発まで