本記事の内容
- Javaとは
- Java SEとEE,MEの違い
- JDK,JRE,JVMの違い
Javaは日本で多くの企業で使われている人気プログラミング言語です。JavaはOSに依存しない言語という特徴がありますが、Javaで開発を行うためには、いくつかのソフトが必要になります。
今回は「Java SE,EE,MEの違い」「JDK,JRE,JVMの違い」について、わかりやすく解説していきます。僕自身は大阪で現役Javaエンジニアとして勤務しておりますので、記事内容の信ぴょう性はあるかとおもいます。
最後までご覧いただくことで、Javaがどういった仕組みで動いているのかが明確になります。これからお伝えすることは、Javaエンジニアになる方であれば必須の知識となりますので、ぜひこの記事でマスターしていってくださいね。
では早速みていきましょう。
プログラミング言語Javaとは
最初にJavaとは、どのようなプログラミング言語なのかについて解説していきます。
サン・マイクロシステムズが開発
Javaとは、1995年にアメリカのサン・マイクロシステムズが開発しリリースされたプログラミング言語です。2010年にOracle社に買収されたため、現在はOracle社がJavaの版権を持っています。
Javaのバージョンの歴史をざっくりまとめると、下記の通りです。
- JDK Beta:1995年
- JDK1.0 :1996年1月23日
- J2SE1.2 :1998年12月8日
- Java SE 6:2006年12月11日
- Java SE 17:2021年9月14日
2021年11月現在のJavaのバージョンは「Java SE 17」となっております。リリースされてから、かれこれ26年も経っているのです。
Javaで作られた世の中のもの
Javaは、世の中のさまざまなアプリケーションやシステムに使われているプログラミング言語です。例えば大人気ゲームのマインクラフトは、Javaでつくられています。他にも、TwitterもJavaで作られています。
Javaはデザインを整えたりするためのフロントエンド側ではなく、目に見えない裏側のバックエンドで動く言語です。Javaが動くタイミングは様々ですが、たとえば簡単にいうと、「ボタン」を押したとき等に動作します。
Java SE・Java EE・Java MEの違いとは
Javaに関連する専門用語はたくさんあります。さらに似たような用語が多いので、用語だけを覚えようとすると、どれがどんな意味なのか覚えるのが大変です。しかしそれぞれの役割について理解をすれば、初心者でも覚えることはさほど難しくありません。
ここからは、下記について解説していきます。
- Java SEとは
- Java EEとは
- Java MEとは
一つずつみていきましょう。
Java SEとは
Java SEとは、Java Standard Editionの略で、主にJavaのプログラミングで使われる最低限必要な基本機能をまとめたAPIです。APIとは、簡単にいうと、機能を共有する仕組みのことを言います。たとえば、Javaでよく目にする出力時に使われる「System.out.println」も、Java SEの中にあるAPIを使っているから利用できるのです。
Java SEは、Javaで開発するために必要な基本的なAPIをまとめたもの
Java EEとは
Java EEとは、Java Platform Enterprise Editionの略で、Java SEに拡張機能を加えたものです。たとえば簡易デスクトップアプリはJava SEのみで開発することも可能ですが、大規模システムを開発する際などは、Java EEが必要なケースがあります。またJava EEは旧名で、現在は「Jakarta EE」に名称変更されています。
Java EEは、大規模開発に使われるJava SEに拡張機能を加えたもの
Java MEとは
Java MEとは、Java Platform Micro Editionの略です。Java MEは主に、携帯電話やプリンタ、家電製品といった組み込み系デバイスを開発するために必要なAPIがまとめられています。
Java MEは、組み込み系デバイス開発時に必要なAPIをまとめたもの
JDK・JRE・JVMの違いとは
続いてJDK,JRE,JVMについてです。
- JDKとは
- JREとは
- JVMとは
ではわかりやすく解説していきますので、順番に見ていきましょう。
JDKとは
JDKとは、Java Development Kitの略で、Javaで開発するために必要なソフトのことです。JDKがあることで、Javaのプログラムのコンパイルや実行、デバッグなどができるようになります。コンパイルとは簡単に言いますと、Javaのプログラムをコンピュータが理解できるように変換することを言います。
JDKには後述するJREが含まれております。そしてJREの中に、JVMも含まれています。つまりJDKをインストールすれば、Javaでの開発が可能となります。JDKは、Oracle公式サイトよりインストールすることが可能です。
JDKはJavaの開発キット
JREとは
JREとは、Java Runtime Environmentの略です。「Runtime(ランタイム)」とは、「実行」という意味になります。つまりJREは、Javaのアプリを実行するために必要なものがまとめられたソフトです。JREは単独でインストールすることはできず、先述したJDKの中に含まれております。
JREはJavaプログラムを実行するためのソフト
JVMとは
JVMとは、Java virtual Machineの略で、JavaのアプリケーションをmacOSや Windowsなどで実行するために必要なアプリケーションです。Javaの仮想マシンとも呼ばれています。
JavaはOSに依存しないプログラミング言語なので、JVMをインストールさえすればどんなOSでも動作します。たとえば、Windows,macOS,Linuxなどですね。JVMは先述したJREの中に含まれております。
JVMはJavaのプログラムをOSで動作させるための仮想マシン
Java SE・JDK・JRE・JVMの違い:まとめ
Java SEやJDK,JRE,JVMの違いについて解説してきました。下記まとめです。
- Java SEは、Javaで開発するために必要な基本的なAPIをまとめたもの
- Java EEは、大規模開発に使われるJava SEに拡張機能を加えたもの
- Java MEは、組み込み系デバイス開発時に必要なAPIをまとめたもの
- JDKはJavaの開発キット
- JREはJavaプログラムを実行するためのソフト
- JVMはJavaのプログラムをOSで動作させるための仮想マシン
似たような用語がたくさんあるので、一度で覚えるのは難しいと思います。ぜひ本記事を何度も見返していただき、徐々に覚えていってくださいませ。
今回は以上です。