Webサイト制作コースのお申し込みはこちら Webサイト制作コースのお申し込みはこちら

Javaプラットフォームと聞くと、各種OSやJVMなどが思い浮かぶかと思いますが、Javaアプリを動かすソフトウェアを総称して「Javaプラットフォーム」と呼んでいます。

本記事では、Javaプラットフォームの各種ソフトウェアの概要をJavaプログラミング学習中の初心者向けにご紹介していきたいと思います。

Javaプラットフォームの概要を知ろう


Javaプラットフォームは、Javaアプリを動かすソフトウェアの総称とご紹介しましたが、もう少し詳しく概要について確認していきましょう。

概要

Wikipediaの情報から引用すると、Javaプラットフォームとは下記のように定義されています。

Javaで記述されたプログラムの開発および実行を行うことのできるソフトウェア群の総称である。
引用元:Javaプラットフォーム(Wikipedia)

Javaは、Java Virtual Machine(JVM)上で動作するため、プラットフォームに依存しないというような説明は聞いたことがある方も多いかと思いますが、これらを実現しているソフトウェアを総称してJavaプラットフォームと呼んでいます。

ソフトウェア群

ではどういったソフトウェア群が、Javaプラットフォームに該当するのかをまずは一覧形式で確認しておきましょう。

ソフトウェア群一例
  • Java言語
  • JVM
  • Java SE
  • Java ME
  • Java EE
  • JDK
  • アプレット
  • サーブレット
  • Javaフレームワーク
  • Java統合開発環境

Javaプラットフォームのソフトウェア群の役割を知ろう


Javaプラットフォームを構成するソフトウェア群について、各種ソフトウェアの役割や代表的なものをご紹介していきたいと思います。

Java言語

Java言語は、プログラミング言語の1つでサン・マイクロシステムズ社が開発し、現在はオラクルが開発を行っている言語です。

環境に依存せず、プログラムを動かせるため様々なアプリ開発で利用されています。

JVM

JVMは、Java Virtual Machineの略称で、Java仮想マシンと呼ばれるものです。

OSや端末に依存せずJavaアプリを実行出来るのは、このJVM上でJavaプログラムが動く仕組みだからです。

Java SE

Java SEは、Java Platform Standard Editionの略称で、JVMやAPIなどをまとめたパッケージのことを指しています。

主にデスクトップアプリケーション向けに利用されるのがJava SEです。

Java ME

Java MEは、Java Platform Micro Editionの略称で、モバイルアプリケーション向けのパッケージです。

携帯電話やBlu-rayプレイヤー・プリンターといった、モバイル端末の組み込みプログラムで利用されます。

Java EE

Java EEは、Java Platform Enterprise Editionの略称で、企業向けのWebアプリケーション用パッケージです。

Java SEにWebアプリケーション開発用のライブラリなどを追加しているため、基本的にJava SEの機能は全て利用することが出来ます。

JDK

JDKは、Java Development Kitの略称で、 Javaアプリを開発するために必要なソフトウェアをまとめたものです。

Javaのコンパイラやデバッガなどに加えて、Javaを実行するために必要なJRE(Java Runtime Enviroment)も含まれます。

アプレット

Javaアプレットは、WebブラウザにJavaプログラムを読み込ませて実行するアプリケーションです。

JDK9以降は非推奨の技術に認定されており、Java11以降は正式に廃止が決定しています。

サーブレット

サーブレットは、サーバーサイドで動かすJavaのプログラムを指しています。

動的Webページを作成するために利用される技術の1つで、クライアント側からの要求に応じてサーバー側のJavaプログラムが実行されます。

Javaフレームワーク

Javaアプリ開発では、基本的にフレームワークと呼ばれる作業を効率化させるためのプログラムの集まりを利用します。

フレームワークは様々な種類が提供されていますが、Java開発においてもほぼ必須と呼べるほど実務では利用されています。

Javaフレームワークの有名どころの概要について確認していきましょう。

Spring

近年のJava開発で主流となっているのが「Spring Framework」です。

Dependency Injection(DI)機能が備えられており、クラスの依存関係が解消出来ることから、プログラムの改修箇所を最低限に絞ることが出来るため開発効率化が実現出来ます。

Play Framework

Play Frameworkは、Rubyのデファクトスタンダートとなっている「Ruby on Rails」を元にしたJava用のフレームワークです。

「Don’t Repeat Yourself(DRY)」と「Convention over Configuration(CoC)」を基本方針として作成されています。

Play Frameworkでは、自動コンパイル機能が備わっている点も開発効率化が期待出来ます。

JSF

JSFは、JavaServer Facesの略称で、Java EEに標準搭載されているフレームワークです。

MVCと呼ばれるWebアプリケーション開発で頻繁に利用されるアーキテクチャが採用されており、作業の分担を容易に出来ることに加え、保守性も高くなるメリットがあります。

Struts

Spring Frameworkなどが登場する以前は、Javaフレームワークのデファクトスタンダードといえば「Struts」でした。

MVCアーキテクチャの先駆け的な存在で、数多くのJavaアプリで現在も利用されています。

ただ近年では、新規Javaアプリの開発でStrutsが採用されることはほとんどなくなっているようです。

Java統合開発環境

Java統合開発環境(IDE)は、開発に必要なソフトウェアをまとめたパッケージのことを指しています。

Javaアプリ開発では、IDEを利用するケースがほとんどですので、有名どころを抑えておきましょう。

Eclipse

Javaでのシステム開発といえば、Eclipseが真っ先に名前のあがるIDEです。

IBMが元々開発を進めていましたが、現在ではオープンソースプロジェクトとして運営されています。

プラグインが豊富に提供されており、自分好みの設定を作成しやすいIDEと言えます。

Android Studio

Androidアプリ開発用にGoogleが作成したIDEが、Android Studioです。

Androidアプリ開発専用のIDEとして提供されており、Android端末の仮想化機能などが標準で提供されています。

Webアプリケーションやデスクトップアプリケーションには利用出来ませんが、Androidアプリ開発であれば真っ先に検討されるIDEです。

さいごに: Javaプラットフォームのソフトウェア群を整理しよう


本記事では、Javaプラットフォームの概要からソフトウェア群それぞれの役割についてご紹介してきました。

Javaアプリを開発するには、様々なソフトウェアが利用されており、今回紹介したもの以外にもたくさんのソフトウェアが利用されます。

全てが必ず必要なわけではなく、アプリ開発の内容によって利用されるソフトウェアも異なりますので、少しずつ自分が利用するソフトウェアから順番に把握出来るよう学習していきましょう。

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。